作用域問題

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>作用域問題</title>
</head>
<body>
<script>
/*
* 1.全局變量與局部變量
* 外層變量可以在內(nèi)層調(diào)用(全局)或颊,內(nèi)層變量不能在外層調(diào)用(局部)
* */

var a = 1;
(function () {
// 外部變量可以在內(nèi)部調(diào)用
alert(a);
})();

/*function test() {
// 內(nèi)部變量不能在外部調(diào)用
var a = 2;
}
alert(a); // 報錯*/

/*
* 下面舉個例子:
* 函數(shù)調(diào)用只是回到函數(shù)定義的地方,調(diào)用一下函數(shù)
* 這里在bbb函數(shù)中陕习,調(diào)用aaa函數(shù)慎陵,
* 這時的aaa函數(shù)并不是被放入bbb函數(shù)中蔑舞,而是在原定義的地方
* 這是的aaa中沒有變量a皆串,所以去訪問全局變量中的a
* */

/*var a = 10;
function aaa() {
alert(a);
}
function bbb() {
var a = 20;
aaa();
}
bbb(); // 10*/






/*
* 2.當var不加的時候,會自動變成全局變量
* 在全局環(huán)境中追驴,不加var和加var效果一樣髓帽,都是全局變量
* 在局域環(huán)境中韧献,加var會被定義為局部變量,不加var會被定義為全局變量
* */

/*function test() {
var a = 10; // 外部訪問不到
b = 10; // 相當于全局變量
// 上面相當于:var a = b = 10;
}
test();
alert(b); // 10
alert(a); // 報錯*/



/*
* 3.變量查找按照就近原則去查找
* var定義的變量,當就近查找沒有找到就去外層查找
* */


/*var a = 10;
(function() {
var a = 20;
// a在匿名函數(shù)中var定義了嫁审,所以找到為20
alert(a); // 20
})();*/

/*var a = 10;
(function() {
a = 20; // 相當于全局變量仆救,將外部的var a = 20;
// 在匿名函數(shù)中沒有找到var定義的a拯杠,然后去外層去查找
// 外部查找到了翅萤,var a = 10 = 20;
alert(a); // 20
})();*/

/*var a = 10;
(function() {
// 在匿名函數(shù)中沒有找到var定義的a,然后去外層去查找
// 外部查找到了亏镰,var a = 10
alert(a); // 10
a = 20;
})();*/

/*var a = 10;
(function() {
// 在匿名函數(shù)中找到var定義的a扯旷,
// 這里的var a = 20,存在變量提升,
// 在執(zhí)行alert(a)之前,變量提示有var a;
// 但是a沒有值索抓,所有返回undefined
alert(a); // undefined
var a = 20;

// 在變量提升的情況下钧忽,相當于下面:
// var a;
// alert(a);
// a = 20;
})(;*/



/*var a = 10;
(function() {
// 執(zhí)行bbb,bbb中的a=20,但是與匿名函數(shù)和全局變量a無關(guān)
bbb();
// 在匿名函數(shù)中查找var定義的a,發(fā)現(xiàn)沒有
// 繼續(xù)在外層中查找,發(fā)現(xiàn)了 var a = 10;
alert(a); // 10
function bbb() {
var a = 20;
}
})();*/


/* var a = 10;
(function() {
bbb();
// 在匿名函數(shù)中查找var定義的a,發(fā)現(xiàn)沒有
// 繼續(xù)在外層中查找逼肯,發(fā)現(xiàn)了 var a = 10 = 20;
alert(a); // 20
function bbb() {
// 沒有var定義耸黑,所有為全局變量,外面的全局變量 var a = 10 = 20;
a = 20;
}
})();*/


/*
* 當參數(shù)與局部變量重名時篮幢,優(yōu)先級等同
* */

/*var a = 10;
(function (a) {
// 這里的參數(shù)a是基本類型大刊,按值傳參的
// 相當于在匿名函數(shù)內(nèi)部重新定義了一個a,
// 且與外層的a不相關(guān)
a += 3;
})(a);
alert(a); // 10*/

/*var a = [1,2,3];
(function (a) {
// 這里的參數(shù)a是特殊類型三椿,按引用傳參的
// 相當于在匿名函數(shù)內(nèi)部重新定義了一個a缺菌,
// 但是這個a是外層a的一個別名,它們引用了同一個地址
// 所以內(nèi)部a添加值搜锰,外部a可以訪問到
a.push(4);
})(a);
alert(a); // [1,2,3,4]*/


/*var a = [1,2,3];
(function (a) {
// 這里的參數(shù)a是特殊類型伴郁,按引用傳參的
// 相當于在匿名函數(shù)內(nèi)部重新定義了一個a,
// 但是這個a是外層a的一個別名纽乱,它們引用了同一個地址
// 所以內(nèi)部a添加值蛾绎,外部a可以訪問到

// 但是昆箕,這里的a又重新賦值了新的數(shù)組鸦列,斷開了與外層的關(guān)系
a = [1,2,3,4];
})(a);
alert(a); // [1,2,3]*/


</script>
</body>
</html>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末租冠,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子薯嗤,更是在濱河造成了極大的恐慌顽爹,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件骆姐,死亡現(xiàn)場離奇詭異镜粤,居然都是意外死亡,警方通過查閱死者的電腦和手機玻褪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門肉渴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人带射,你說我怎么就攤上這事同规。” “怎么了窟社?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵券勺,是天一觀的道長。 經(jīng)常有香客問我灿里,道長关炼,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任匣吊,我火速辦了婚禮儒拂,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘色鸳。我一直安慰自己侣灶,他們只是感情好,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布缕碎。 她就那樣靜靜地躺著褥影,像睡著了一般。 火紅的嫁衣襯著肌膚如雪咏雌。 梳的紋絲不亂的頭發(fā)上凡怎,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音赊抖,去河邊找鬼统倒。 笑死,一個胖子當著我的面吹牛氛雪,可吹牛的內(nèi)容都是我干的房匆。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼浴鸿!你這毒婦竟也來了井氢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤岳链,失蹤者是張志新(化名)和其女友劉穎花竞,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體掸哑,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡约急,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了苗分。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片厌蔽。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖摔癣,靈堂內(nèi)的尸體忽然破棺而出躺枕,到底是詐尸還是另有隱情,我是刑警寧澤供填,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布拐云,位于F島的核電站,受9級特大地震影響近她,放射性物質(zhì)發(fā)生泄漏叉瘩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一粘捎、第九天 我趴在偏房一處隱蔽的房頂上張望薇缅。 院中可真熱鬧,春花似錦攒磨、人聲如沸泳桦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灸撰。三九已至,卻和暖如春拼坎,著一層夾襖步出監(jiān)牢的瞬間浮毯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工泰鸡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留债蓝,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓盛龄,卻偏偏與公主長得像饰迹,于是被迫代替她去往敵國和親芳誓。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容