2012-12-03 2 views

답변

10

그것은

window.b=a; 
window.a=a; 

을 의미한다 또는 당신은 말할 수있다. 단일 한 Statment

그리고 한 가지 더

window.a == 오른쪽에서

window.b=a; 
window.a=window.b; 

이 개 할당?

네 이것이 맞습니다.

window.b = a; 
window.a = a; 

없고, window.aa 항상 동일하지 않다 : 그것은 참으로

+0

당신의'window.a == a' 문에'iframes' 또는'nodejs'를 포함하지 않으시겠습니까? – Petah

1

같은를 반환합니다. 일반적으로 웹 브라우저 JavaScript 인터프리터의 전역 범위에서만 동일합니다.

1

창의 ab 속성은 a 값에 할당됩니다. 예,이 코드가 전역 범위에서 실행되는 경우 awindow.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 
} 
0

이 같은 등의 :

window.b=a; 
window.a= window.b; 

window.a는 == A는 위의 진술 후,이 경우에 true가됩니다. 예를 들어, a가 전역 변수 인 경우와 같이 잘못된 경우가 있습니다.

그리고 한 가지 더 : 다음 번에 질문에 대한 더 유익한 제목을 찾으십시오.

2

이 할당은 오른쪽에서 왼쪽으로 실행되므로 '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> 
0

당신이 이런 식으로 코드를 작성할 수 있으며,이 코드가 corresponnding 될 것으로 알고 의 값이 Number.NaN 인 경우 window.a==a은 false가 될 수 있습니다. Number.NaN은 그 자체를 포함하여 어떤 값과도 같지 않기 때문입니다.