美文网首页
let、const命令

let、const命令

作者: 小橘籽 | 来源:发表于2019-08-03 03:04 被阅读0次

这两个命令声明的都是块作用域变量和常量

let 变量

function test(){    
    for(var i=0;i<3;i++){
        console.log('innner:' + i)
    }
    console.log('last:' + i) // 3
}

es5没有块作用域,所以此处i的作用域为test的函数作用域。

function test(){    
    for(let i=0;i<3;i++){
        console.log('innner:' + i)
    }
    console.log('last:' + i) // Uncaught ReferenceError: i is not defined
}

es6新增了块作用域,所以此处i的作用域为for循环后面的大括号内。

function test(){ // Duplicate declaration "a"
   let a = 2;
   let a = 1; 
}

let a = 3;

同一作用域内,let不能重复定义同名变量。

const 常量

function test(){    
    const PI; // Unexpected token
    PI = 3.14;
    console.log(PI)
}

常量声明时必须赋值

function test(){    
    const PI= 3.14;
    PI = 8; // SyntaxError: "PI" is read-only
    console.log(PI);
}

常量不能被重新赋值

function test(){   
    let a = 1; 
    const PI= a;
    a = 4;
    console.log(PI); // 1
}

function test(){   
    let a = {
        b:1
    }; 
    const PI= a;
    a.b = 4;
    console.log(PI) // {b: 4}
}

const被赋值为值类型和引用类型的区别

相关文章

  • ES6的let 和 const 命令

    let 和 const 命令 let 命令 块级作用域 const 命令 顶层对象的属性 gl...

  • let和const

    新的赋值语句let和const let和const命令

  • ES6基础入门

    变量 let 命令 const 命令 函数

  • 重读 ES6(一)

    一、let 和 const 命令 let 命令 let 与 var 的区别:let 声明的变量只在 let 命令所...

  • ES6需要记忆理解的地方

    let和const命令 1、let和const均无变量提升。2、let变量指向的地址可变,const指向的地址不可...

  • es6常用语法(一)

    let 和 const 命令 let 命令 只在let命令所在的代码有效 let命令,用来声明变量。它的用法类似于...

  • ES6快速使用

    let const let&const介绍let:声明变量,类似于var,但let所声明的变量只在let命令所在的...

  • js 中var contst let 之间的区别

    ECMAScript 6 新增 const 和 let 命令,用来声明变量。 那么const,let和var 在声...

  • ES6 let 和 const 命令

    目录 1、let命令 2、块级作用域 3、const命令 1、let命令 ES6 新增了let命令,用来声明变量。...

  • es6总结一

    es6基础 let和const命令 let和const用于声明变量let跟var的区别 1、let定义过的变量不能...

网友评论

      本文标题:let、const命令

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