當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JS 全局对象 全局变量 作用域 (改自TOM大叔博文)
生活随笔
收集整理的這篇文章主要介紹了
JS 全局对象 全局变量 作用域 (改自TOM大叔博文)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
JavaScript通過函數(shù)管理作用域。
局部變量:在函數(shù)內(nèi)部聲明的變量是局部變量,只能在這個函數(shù)內(nèi)部使用,函數(shù)外部不可用。
全局變量:在任何函數(shù)外面聲明的變量;或是未經(jīng)聲明在函數(shù)內(nèi)部直接簡單使用的變量。
全局對象:每個JavaScript環(huán)境有一個全局對象,當你在適當?shù)牡胤绞褂胻his的時候可以訪問到。你創(chuàng)建的每一個全局變量都是這個全局對象的屬性或數(shù)組元素。在瀏覽器中,為方便起見,該全局對象有個附加屬性叫做window,此window(通常)指向該全局對象本身。
下面的代碼片段顯示了如何在瀏覽器中訪問全局對象:
<script>alert(this); // output:[object Window]
</script>
<script>
window.onload = function() {
alert(this); // output:[object Window]
};
</script>
在函數(shù)內(nèi)部,當局部變量與全局變量重名時,局部變量優(yōu)先級高于全局變量,但不會在內(nèi)存區(qū)域中覆蓋全局變量:
<script>// 全局變量未經(jīng)聲明直接使用,不推薦此用法
// var myGlobal = "hello"; 這是推薦用法
myGlobal = "hello"; // 直接輸出變量值
alert(myGlobal);
// 輸出全局對象window的屬性myGlobal
alert(window.myGlobal); // 輸出全局對象this的屬性myGlobal
alert(this.myGlobal); // 以數(shù)組方式輸出
alert(window['myGlobal']); // 以數(shù)組方式輸出
alert(this['myGlobal']);
</script>
下面的代碼片段顯示了如何在瀏覽器中創(chuàng)建和訪問全局變量:
<script>// 全局變量未經(jīng)聲明直接使用,不推薦此用法
// var myGlobal = "hello"; 這是推薦用法
myGlobal = "hello"; // 直接輸出變量值
alert(myGlobal);
// 輸出全局對象window的屬性myGlobal
alert(window.myGlobal); // 輸出全局對象this的屬性myGlobal
alert(this.myGlobal); // 以數(shù)組方式輸出
alert(window['myGlobal']); // 以數(shù)組方式輸出
alert(this['myGlobal']);
</script>
轉(zhuǎn)載于:https://www.cnblogs.com/redasurc/archive/2013/01/11/2856458.html
總結(jié)
以上是生活随笔為你收集整理的JS 全局对象 全局变量 作用域 (改自TOM大叔博文)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle中的NULL(一、问题引入)
- 下一篇: 【教程】EditPlus+MinGW搭建