本篇文章為大家展示了javascript中l(wèi)et、var、const三者的區(qū)別是什么,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
1.聲明后未賦值,表現(xiàn)相同
//一個(gè)例子 'use strict'; (function() { var varTest; let letTest; console.log(varTest); //輸出undefined console.log(letTest); //輸出undefined }());
2.使用未聲明的變量,表現(xiàn)不同
//一個(gè)例子 (function() { console.log(varTest); //輸出undefined(注意要注釋掉下面一行才能運(yùn)行) console.log(letTest); //直接報(bào)錯(cuò):ReferenceError: letTest is not defined var varTest = 'test var OK.'; let letTest = 'test let OK.'; }());
3.重復(fù)聲明同一個(gè)變量時(shí),表現(xiàn)不同
//一個(gè)例子 'use strict'; (function() { var varTest = 'test var OK.'; let letTest = 'test let OK.'; var varTest = 'varTest changed.'; let letTest = 'letTest changed.'; //直接報(bào)錯(cuò):SyntaxError: Identifier 'letTest' has already been declared console.log(varTest); //輸出varTest changed.(注意要注釋掉上面letTest變量的重復(fù)聲明才能運(yùn)行) console.log(letTest); }());
4.變量作用范圍,表現(xiàn)不同
//一個(gè)例子 'use strict'; (function() { var varTest = 'test var OK.'; let letTest = 'test let OK.'; { var varTest = 'varTest changed.'; let letTest = 'letTest changed.'; } console.log(varTest); //輸出"varTest changed.",內(nèi)部"{}"中聲明的varTest變量覆蓋外部的letTest聲明 console.log(letTest); //輸出"test let OK.",內(nèi)部"{}"中聲明的letTest和外部的letTest不是同一個(gè)變量 }());
5.const定義的變量不可以修改,而且必須初始化
//一個(gè)例子 const b = 2;//正確 // const b;//錯(cuò)誤,必須初始化 console.log('函數(shù)外const定義b:' + b);//有輸出值 // b = 5; // console.log('函數(shù)外修改const定義b:' + b);//無(wú)法輸出
6.var定義的變量可以修改,如果不初始化會(huì)輸出undefined,不會(huì)報(bào)錯(cuò)
var a = 1; // var a;//不會(huì)報(bào)錯(cuò) console.log('函數(shù)外var定義a:' + a);//可以輸出a=1 function change(){ a = 4; console.log('函數(shù)內(nèi)var定義a:' + a);//可以輸出a=4 } change(); console.log('函數(shù)調(diào)用后var定義a為函數(shù)內(nèi)部修改值:' + a);//可以輸出a=4
7.let是塊級(jí)作用域,函數(shù)內(nèi)部使用let定義后,對(duì)函數(shù)外部無(wú)影響
let c = 3; console.log('函數(shù)外let定義c:' + c);//輸出c=3 function change(){ let c = 6; console.log('函數(shù)內(nèi)let定義c:' + c);//輸出c=6 } change(); console.log('函數(shù)調(diào)用后let定義c不受函數(shù)內(nèi)部定義影響:' + c);//輸出c=3
上述內(nèi)容就是javascript中l(wèi)et、var、const三者的區(qū)別是什么,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前標(biāo)題:javascript中l(wèi)et、var、const三者的區(qū)別是什么-創(chuàng)新互聯(lián)
分享地址:http://chinadenli.net/article46/dcpieg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、定制網(wǎng)站、App設(shè)計(jì)、微信公眾號(hào)、品牌網(wǎng)站設(shè)計(jì)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容