變量聲明、聲明提前和作用域

一. 作用域

分為全局作用域和函數(shù)作用域

函數(shù)作用域簡(jiǎn)言之就是:變量在聲明他們的函數(shù)體以及這個(gè)函數(shù)體嵌套的任意函數(shù)體內(nèi)都是有定義的。

二 .聲明提前

變量在聲明之前就已經(jīng)可用。我們稱(chēng)這種特性為聲明提前,也就是函數(shù)里的所有變量都被“提前”至函數(shù)體的頂部。

有以下幾種方式

1. var a;? ? ?即:? var a = undefined;

2. a = 1;? ? ? ? 即:? ?var a = 1;(全局變量)

3. var a = 1;? ?即:? 前兩種的組合

下面陷阱分析:

var?v?="yoyo";? ?//全局變量聲明,全局作用域,即:var v = undefined;?var?v?="yoyo";

(function(){?

????console.log(v);? ? ?//由于聲明提前,此段代碼前有一段var v = undefined; 函數(shù)作用域,所以此時(shí)輸出undefined

?????var?v?="check?now";? ? ?//此處?var?v?="check?now";賦值了局部變量;所以下方輸出"check?now"

? ? ?console.log(v);?

})();?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第2章 基本語(yǔ)法 2.1 概述 基本句法和變量 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,616評(píng)論 0 13
  • 天氣轉(zhuǎn)冷,周?chē)芏嗤录业暮⒆右灿懈忻胺窝椎茸≡旱?,很心疼。做父母的最懂這種感受,孩子感冒咳嗽,若去醫(yī)院就是抽血...
    素餡兒閱讀 462評(píng)論 2 1
  • (修改了三天的這一篇終于可以和大家見(jiàn)面了~) 她輕輕敲著窗框,嘆了一口氣。 突然,她聽(tīng)到了一縷幽遠(yuǎn)的笛音,仿佛有一...
    Vesper_Xiao閱讀 646評(píng)論 0 2
  • 兩個(gè)同命相連的人,會(huì)有很多共同的語(yǔ)言,會(huì)有很多共同的觀點(diǎn),連發(fā)牢騷幾乎都是一樣的! 我們都是有病的人,除了...
    救贖的公牛閱讀 443評(píng)論 0 0

友情鏈接更多精彩內(nèi)容