let

作者: 始终丶 | 来源:发表于2018-12-26 15:04 被阅读0次

基本用法

ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。


{

let a=10;

var b=1;

}

a // ReferenceError: a is not defined.

b // 1

以上代码 var的声明中返回的是正确的值 let的声明则会报错。 这表明let声明的变量只所声明的代码块中有效


for(let i = 0; i < 10;i++){

}

alert(i)//报错

以上代码 计算器i 只能在循环中使用 ,再循环外使用就会报错。

let 不存在变量提升


console.log(a)

var a=10;//undefined

//

console.log(a)

let b=10;//报错

上面代码中,变量avar命令声明,会发生变量提升,即脚本开始运行时,变量a已经存在了,但是没有值,所以会输出undefined。变量blet命令声明,不会发生变量提升。这表示在声明它之前,变量b是不存在的,这时如果用到它,就会抛出一个错误。

不允许重复声明


// 报错

function func() {

  let a = 10;

  var a = 1;

}

// 报错

function func() {

  let a = 10;

  let a = 1;

}

因此,不能在函数内部重新声明参数。


function func(arg) {

  let arg; // 报错

}

function func(arg) {

  {

    let arg; // 不报错

  }

}

相关文章

网友评论

      本文标题:let

      本文链接:https://www.haomeiwen.com/subject/hfmhlqtx.html