는 어떻게 작동합니까 몇 가지 코드자바 스크립트 다중 할당 문
window.a = window.b = a;
에서 그 라인을보고?
다음은 항상 true를 반환합니까?
window.a == a
는 어떻게 작동합니까 몇 가지 코드자바 스크립트 다중 할당 문
window.a = window.b = a;
에서 그 라인을보고?
다음은 항상 true를 반환합니까?
window.a == a
그것은
window.b=a;
window.a=a;
을 의미한다 또는 당신은 말할 수있다. 단일 한 Statment
및
그리고 한 가지 더
window.a == 오른쪽에서
window.b=a; window.a=window.b;
이 개 할당?
네 이것이 맞습니다.
window.b = a;
window.a = a;
없고, window.a
및 a
항상 동일하지 않다 : 그것은 참으로
같은를 반환합니다. 일반적으로 웹 브라우저 JavaScript 인터프리터의 전역 범위에서만 동일합니다.
창의 a
및 b
속성은 a
값에 할당됩니다. 예,이 코드가 전역 범위에서 실행되는 경우 a
및 window.a
은 동일합니다.
var a = "foo";
//window.a and a are the same variable
window.a = "bar";
a; //bar
function f(){
var a = "notfoo";
//window.a is a different variable from a, although they may take the same value
window.a = "baz";
a; //notfoo
}
이 같은 등의 :
window.b=a;
window.a= window.b;
window.a는 == A는 위의 진술 후,이 경우에 true가됩니다. 예를 들어, a가 전역 변수 인 경우와 같이 잘못된 경우가 있습니다.
그리고 한 가지 더 : 다음 번에 질문에 대한 더 유익한 제목을 찾으십시오.
이 할당은 오른쪽에서 왼쪽으로 실행되므로 'window.b'에 'a'값이 지정되면 'window.a'에 'windows.b'값이 할당됩니다.
이 같은이 다중 할당 휴식과 같은 결과를 얻을 수 있습니다 :
이window.b=a;
window.a=a;
당신은 범위 지정과 같은의도 알고 있어야합니다. 이 같은이 예를 들어 전역 범위에서 코드, 간단한 스크립트를 실행하는 경우 : 'A'와 'window.a이'같은 변수이기 때문에
<script>
var a = 10;
window.a = window.b = a;
</script>
window.a는 == A는 사실입니다. 'a'는 실제로 'window'객체의 속성입니다. 모든 전역 변수는 'window'객체의 속성입니다.
<script>
var a = 10;
a = b = a;
</script>
을하지만 함수에서이 코드를 삽입하는 경우는, 기능의 범위에 예를 들어 실행 : 사실
<script>
function ex() {
var a = 10; // this is local variable
window.a = window.b = a; // this time window.a != a
}
</script>
당신이 이런 식으로 코드를 작성할 수 있으며,이 코드가 corresponnding 될 것으로 알고 의 값이 Number.NaN
인 경우 window.a==a
은 false가 될 수 있습니다. Number.NaN
은 그 자체를 포함하여 어떤 값과도 같지 않기 때문입니다.
당신의'window.a == a' 문에'iframes' 또는'nodejs'를 포함하지 않으시겠습니까? – Petah