码迷,mamicode.com
首页 > 其他好文 > 详细

let和const初探

时间:2021-04-20 14:35:50      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:代码解析   art   ali   原理   code   syn   好处   vue   cee   

块级作用构造let和const

  1. let 和 const的区别就是,let声明为变量
    const声明为常量,就是在后面不可以去更改其值,否则会报错。
const B = 1;
B = 2; // Uncaught TypeError: Assignment to constant variable.
  1. let和var的区别: let存在块级作用域,而var只有全局作用域,和在函数内形成局部的作用域,不存在块级作用域。(关于作用域课一详细的看看《Javascript高级程设计)。
    原理:在js代码执行之前至少要经过一个步骤,js代码解析,在解析的时候,js引擎就拿着个小本本记下来声明了哪些变量,你可以认为使用let声明的,就不让它在声明前使用(《ES6标准入门》一书中let变量声明之前的区域叫做暂时性死区,也就是你不能在这个区域使用这个变量)。使用var声明的,可以让你在申明前使用。
    console.log(name);// Uncaught ReferenceError: Cannot access ‘B‘ before initialization
    let name = "Bob";
  1. 常见块级作用
    可以笼统的认为块级作用域有以下形式
  • 函数内部
  • 块中字符串 () {}
(let i = 1)
{
  
}

for(let i = 0; i < nums.length;++i) {} 

function() {
  let name = ""
}
  1. 使用let和const申明的好处注意点
  • 同一个作用域下可以防止重复声明
  • const声明必须同时初始化,否则报错 (Uncaught SyntaxError: Missing initializer in const declaration)

总结

let和const作为ES5中退出解决var所带来的的问题,在编程中全部使用let和const来编程,可以减少很多不必要的错误。

参考

- 《ES标准入门》
- 《Vue.js从入门到实战》

let和const初探

标签:代码解析   art   ali   原理   code   syn   好处   vue   cee   

原文地址:https://www.cnblogs.com/rookie123/p/14672796.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!