欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中var的重要性實(shí)例分析

 更新時(shí)間:2019年07月09日 08:45:44   作者:webbc  
這篇文章主要介紹了JavaScript中var的重要性,結(jié)合實(shí)例形式分析了javascript變量定義、作用范圍、作用域及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了JavaScript中var的重要性。分享給大家供大家參考,具體如下:

在JS中申明變量是使用var來(lái)進(jìn)行申明,但是有的時(shí)候我們沒有使用var也可以。這是為什么呢?我來(lái)給大家細(xì)細(xì)的說(shuō)來(lái)。

var的本質(zhì)

var的本質(zhì)就是來(lái)申明變量的

<script>
var str = 'China';//申明并進(jìn)行賦值
</script>

變量的作用范圍

先以一個(gè)例子來(lái)說(shuō)明引出問(wèn)題,在這個(gè)例子中,在函數(shù)t中沒有使用var關(guān)鍵字來(lái)申明變量,系統(tǒng)認(rèn)為只是進(jìn)行賦值操作而已,而且這個(gè)賦值操作會(huì)影響到了window對(duì)象的str2屬性

<script>
var str1 = 'China';//申明并賦值str1
var str2 = 'Japan';//申明并賦值str2
console.log(window.str1,window.str2);//輸出:China Japan
function t(){
  var str1 = 'local';//申明并賦值str1
  str2 = 'global';//賦值操作,并不是申明變量,污染window對(duì)象的屬性
}
t();//調(diào)用t函數(shù)
console.log(window.str1,window.str2);//輸出:China global
</script>

變量的作用域

全局作用域:在最外層定義的變量

局部作用域:在函數(shù)內(nèi)部定義的變量

JS作用域的特點(diǎn):首先在函數(shù)內(nèi)部查找變量,找不到則到外層函數(shù)查找,逐步找到最外層,即window對(duì)象,并操作window對(duì)象的屬性。

<script>
var str = 'China';
function t1(){
  var str = 'Japan';
  function t2(){
    var str = 'USA';
    console.log(str);
  }
  t2();
}
t1();
</script>

這個(gè)例子比較典型,可以來(lái)說(shuō)明JS變量的作用域切換問(wèn)題,腳本首先在最外層定義了str屬性,當(dāng)調(diào)用t1函數(shù)時(shí),在t1函數(shù)中也定義了str變量和t2方法,當(dāng)執(zhí)行t2方法時(shí),此時(shí)又定義了str變量,所以此時(shí)打印USA。

當(dāng)屏蔽t2函數(shù)中的定義操作,此時(shí)在t2函數(shù)作用域中沒有str變量,則從它的上一級(jí)作用域中查找,又因?yàn)閠1函數(shù)中定義了str變量,此時(shí)打印Japan。

當(dāng)屏蔽t1和t2函數(shù)中的定義操作,則一層一層地往外找,此時(shí)找到最外層,此時(shí)打印China。

當(dāng)最外層也沒有定義該變量,在運(yùn)行該JS過(guò)程中就找不到該變量,此時(shí)會(huì)出錯(cuò),在瀏覽器的控制臺(tái)可以找到錯(cuò)誤。

更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript常用函數(shù)技巧匯總》、《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論