let變數之前沒見過,剛遇到,探探究竟。
(function() { var varTest; let letTest; console.log(varTest); //输出undefined console.log(letTest); //输出undefined }());
(function() { console.log(varTest); //输出undefined(注意要注释掉下面一行才能运行) console.log(letTest); //直接报错:ReferenceError: letTest is not defined var varTest = 'test var OK.'; let letTest = 'test let OK.'; }());
(function() { "use strict"; 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); }());
(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不是同一个变量 }());
備註:
#使用 let 語句宣告一個變數,該變數的範圍限於聲明它的塊中。 可以在宣告變數時為變數賦值,也可以稍後在腳本中為變數賦值。
使用 let 宣告的變量,在宣告前無法使用,否則將會導致錯誤。
如果未在 let 語句中初始化您的變量,則會自動為其指派JavaScript 值 undefined
相關文章:
#以上是js中let變數的詳細用法並且和var的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!