대 점 표기법을 사용하여이 자바 스크립트는자바 스크립트 : 다른 행동 브라켓 표기법
var x = window.foo;
window.x = null;
alert(window.bar === undefined);
경고 "true"로 니펫을. 그러나
,이 조각
var x = window.foo;
window[x] = null;
alert(window.bar === undefined);
경고 "거짓".
여기에 무슨 일이 일어나고 있습니까?
는 (나는 거기에 다른 자바 스크립트 코드와 HTML 페이지 내부의 최신 크롬 브라우저에서이 코드를 실행하고 있습니다.)업데이트
@elusive 영리하게 자신의 의견에 요약으로 아래에서 나는 실수로 window.x
과 window[x]
이 동일한 것으로 가정합니다. 그건 맞지 않아. window.x
은 window["x"]
과 같습니다.
우리는'window.foo'의 내용이 무엇인지 물어볼 수 있습니까? –
'window.x'는'window [x ']'not'window [x]'와 동일합니다. – jwueller
@elusive 네, 한 문장으로 요약했습니다 :) –