首頁  >  文章  >  web前端  >  js中let變數的詳細用法並且和var的區別

js中let變數的詳細用法並且和var的區別

php是最好的语言
php是最好的语言原創
2018-08-03 09:22:122703瀏覽

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如何定義變數

js中const,var,let區別

#

以上是js中let變數的詳細用法並且和var的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn