2014-06-19 19 views
1

如何獲取作用域內全局變量的值。 如果我有相同的名稱變量存在於相同的範圍內。如何在另一個作用域內調用全局變量Javascript

<script> 
var number =2; 

var fun= function(numbs){ 
    console.log(number); 
    //here it displays 2 

    var number =numbs; 
    console.log(number); 
    //here it displays 3 


    console.log(number); 
    //how do i get value of global variable here 
} 

fun(3); 
</script> 
+0

恕我直言,在不同的範圍內使用相同的變量名稱是不好的形式,並嘗試引用父(s)作用域。使用'var numbers = numbs;'代替! –

+0

您是否在發佈之前運行過此操作?第一行('//這裏顯示2')由於變量提升而實際顯示'undefined'。 –

回答

1

簡單:

console.log(window.number); 

the MDN

全局變量

全局變量是在全局對象的事實屬性。在網頁 頁面中,全局對象是窗口,因此您可以使用window.variable語法來設置和訪問全局變量 。

但是你不應該這樣做。如果你需要繞過陰影,你有一個設計問題,你應該修復它。

6

,你應該能夠調用

window.number 

的全局變量實際上只是一個窗口對象的屬性。

相關問題