Drenched_belief
2017-03-21 10:04:50
JavaScript的函數(shù)在查找變量時(shí)從自身函數(shù)定義開始,從“內(nèi)”向“外”查找。如果內(nèi)部函數(shù)定義了與外部函數(shù)重名的變量,則內(nèi)部函數(shù)的變量將“屏蔽”外部函數(shù)的變量。請看:function foo(){? ? ? ? ? ? ? ? var x=1;? ? ? ? ? ? ? ? function bar(){? ? ? ? ? ? ? ? ? ? var x="a";? ? ? ? ? ? ? ? ? ? alert("x in bar()="+x);? ? ? ? ? ? ? ? }? ? ? ? ? ? ? ? alert("x in foo()="+x);? ? ? ? ? ? ? ? bar();? ? ? ? ? ? }怎么理解上面的話呢?如果調(diào)用foo,縣彈出x in foo()=1,后彈出x in bar()=a ?這不是很正常嘛。
添加回答
舉報(bào)
0/150
提交
取消