中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript中let、var、const三者的區別是什么

發布時間:2021-01-29 17:08:21 來源:億速云 閱讀:157 作者:Leah 欄目:web開發

本篇文章為大家展示了javascript中let、var、const三者的區別是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

1.聲明后未賦值,表現相同

//一個例子
'use strict';

(function() {
 var varTest;
 let letTest;
 console.log(varTest); //輸出undefined
 console.log(letTest); //輸出undefined
}());

2.使用未聲明的變量,表現不同

//一個例子
(function() {
 console.log(varTest); //輸出undefined(注意要注釋掉下面一行才能運行)
 console.log(letTest); //直接報錯:ReferenceError: letTest is not defined

 var varTest = 'test var OK.';
 let letTest = 'test let OK.';
}());

3.重復聲明同一個變量時,表現不同

//一個例子
'use strict';
(function() {
 var varTest = 'test var OK.';
 let letTest = 'test let OK.';
var varTest = 'varTest changed.';
 let letTest = 'letTest changed.'; //直接報錯:SyntaxError: Identifier 'letTest' has already been declared
 console.log(varTest); //輸出varTest changed.(注意要注釋掉上面letTest變量的重復聲明才能運行)
 console.log(letTest);
}());

4.變量作用范圍,表現不同

//一個例子
'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.",內部"{}"中聲明的varTest變量覆蓋外部的letTest聲明
 console.log(letTest); //輸出"test let OK.",內部"{}"中聲明的letTest和外部的letTest不是同一個變量
}());

5.const定義的變量不可以修改,而且必須初始化

//一個例子
const b = 2;//正確
// const b;//錯誤,必須初始化 
console.log('函數外const定義b:' + b);//有輸出值
// b = 5;
// console.log('函數外修改const定義b:' + b);//無法輸出

6.var定義的變量可以修改,如果不初始化會輸出undefined,不會報錯

var a = 1;
// var a;//不會報錯
console.log('函數外var定義a:' + a);//可以輸出a=1
function change(){
a = 4;
console.log('函數內var定義a:' + a);//可以輸出a=4
} 
change();
console.log('函數調用后var定義a為函數內部修改值:' + a);//可以輸出a=4

7.let是塊級作用域,函數內部使用let定義后,對函數外部無影響

let c = 3;
console.log('函數外let定義c:' + c);//輸出c=3
function change(){
let c = 6;
console.log('函數內let定義c:' + c);//輸出c=6
} 
change();
console.log('函數調用后let定義c不受函數內部定義影響:' + c);//輸出c=3

上述內容就是javascript中let、var、const三者的區別是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

井冈山市| 柳州市| 吴忠市| 阿图什市| 永新县| 新丰县| 桃园市| 牙克石市| 綦江县| 定边县| 和田市| 迁安市| 调兵山市| 松溪县| 双辽市| 阿合奇县| 永宁县| 长沙县| 岗巴县| 通化市| 万盛区| 南华县| 革吉县| 子洲县| 舟曲县| 南皮县| 普兰店市| 祁门县| 田阳县| 隆安县| 成都市| 公安县| 当涂县| 天长市| 二连浩特市| 远安县| 石景山区| 红河县| 松滋市| 涿州市| 德钦县|