프로젝트에서 JS 약속을 최근에 사용하기 시작했습니다. 내가 사용할 때마다 .catch
내 JS linter 불평을 발견했습니다. 그것은 실행하고해야 할 일을하지만, 나는 ECMAScript spec을 찾았고 실제로 그것이 옳은 것처럼 보입니다 : catch
is a keyword 이후로 식별자로 사용할 수 없습니다. 내가 메소드 이름은 식별자 이해, 그래서 이것은 무효이므로 :JS 약속/catch + 메소드 이름이 JS 키워드이므로 유효하지 않습니까?
Promise.reject("Duh").catch(alert);
그것은이 대신해야한다 : 나는 무엇을 놓치고
Promise.reject("Duh")['catch'](alert);
?
ecmaScript 사양을 따르지 않는 브라우저의 느낌이 다를 수 있습니다. – dandavis
lint는 ES3 호환을 시도하기 때문에 불평 할 가능성이 높습니다. –
관련 내용 : [JavaScript에서 예약어를 속성 이름으로 사용하기위한 브라우저 지원] (http://stackoverflow.com/q/5306315/218196) ... Kangax : http://kangax.github.io/compat- table/es5/# Reserved_words_as_property_names –