天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JScript中的'var'定義變量的作用域

都不記得是什么時候看的JScript的語法教程了,里面說在聲明變量時忽略var關(guān)鍵字是完全合法的。當(dāng)時也因為覺得JavaScript是loosely-typed的語言,所以var可能真的就是個擺設(shè)。但是事實常常又證明想當(dāng)然的結(jié)果是不可靠的。 
 看看下面這幾個例子的結(jié)果就知道問題了: 
No.1  

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

No.2  

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

No.3 

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

這三個例子的執(zhí)行結(jié)果分別是:  
復(fù)制代碼 代碼如下:
Results#region Results  
No.1  
0  
undefined  

No.2  
0  
1  

No.3  
0  
undefined  
#endregion  


     原來JavaScript的變量也是有作用域的,只是它非常的籠統(tǒng),就分為全局變量和函數(shù)變量。在第二個例子中得到0和1,是因為所有的變量都是全局變量,而且那個語句塊一共就定義了兩個變量。而第一個第三的函數(shù)外全局變量,確實說明var關(guān)鍵字有沒有都沒有關(guān)系。而函數(shù)內(nèi)的var關(guān)鍵字就很關(guān)鍵了,它說明第二個var01是函數(shù)內(nèi)的變量,所以在初始化var01前輸出自然就是'undefined'了。 

     那么函數(shù)里面是不是就屏蔽掉了全局的var01了呢?我們知道在C/C++可以使用::去訪問全局變量,那么JavaScript可不可以呢?這里其實我們只要明白了全局變量到底是什么東西,就好弄了。原來全局變量都是動態(tài)添加到Window對象的實例window上的屬性而以,所以我們只要在函數(shù)內(nèi)用:document.write(window.var01);就可以取到其值1了。同時在這個上下文中,function內(nèi)的this也是指向的window實例,我們也可以把引用寫成:this.var01。 

    By the way, 重看JScript教程時,它說變量只能是[a-zA-Z_]+[a-zA-Z0-9_]*格式,可是'$'卻也可以作為變量名字符,而且還可以用在開頭,比如:$1234,更甚至于:$$$ 也是合法的變量名,faint。 

JavaScript技術(shù)JScript中的'var'定義變量的作用域,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲一卡二卡三卡四卡2021麻豆 | 国产电影三级午夜a影院 | 亚洲欧美中文日韩v在线 | 国产欧美无码亚洲毛片 | 国产精品无码AV天天爽色欲 | 久久精麻豆亚洲AV国产品 | 伊人久久大香线蕉综合bd高清 | 亚洲综合AV色婷婷五月蜜臀 | 成人网18免费韩国 | 热99re久久精品国产首页 | 2020亚洲 欧美 国产 日韩 | 伊人久久网国产伊人 | 欧美亚洲日韩欧洲不卡 | 穿白丝袜边走边尿白丝袜 | chinese野外男女free | 黑人巨大交牲老太 | 久久理伦片琪琪电影院 | 免费又黄又硬又爽大片 | 久久久欧美国产精品人妻噜噜 | 闺蜜撬开我的腿用黄瓜折磨我 | 国产69精品久久久久乱码免费 | 国产女人视频免费观看 | 91免费永久在线地址 | 男人女人边摸边吃奶边做 | 亚洲精品另类有吗中文字幕 | 511麻豆视传媒精品AV | 99久在线国内在线播放免费观看 | 中文字幕久久熟女人妻AV免费 | 芒果影院网站在线观看 | 韩国无遮羞禁动漫在线观看 | 男生脱美女内裤内衣动态图 | 人妻超级精品碰碰在线97视频 | 麻豆AV无码蜜臀AV色哟 | yellow日本动漫观看免费 | 97色在线视频 | 视频在线免费观看 | 久久99蜜桃精品麻豆 | 97久久国产露脸精品国产 | 大桥未久与黑人中出视频 | 欧美日韩黄色 | 国产女高清在线看免费观看 |