美文网首页
let 与 const

let 与 const

作者: good__day | 来源:发表于2019-06-03 14:26 被阅读0次

1、 var 与 let、const 区别

a、不存在变量提升 

b、暂时性死区

c、不允许重复声明

d、块级作用域 (依赖于 a)

e、const 是常量生命,指向的是地址,要真正做到对象不可变 需要用 Object.freeze

f、es6 中变量生命方式变成了 6 种 var function let const class import

g、let命令、const命令、class命令声明的全局变量,不属于顶层对象的属性。也就是说,从 ES6 开始,全局变量将逐步与顶层对象的属性脱钩。

var a=1;    this.a   window.a  // 1

letb=1;     window.b   this.b / / undefined

h、全局环境中,this会返回顶层对象。但是,Node 模块和 ES6 模块中,this返回的是当前模块。

函数里面的this,如果函数不是作为对象的方法运行,而是单纯作为函数运行,this会指向顶层对象。但是,严格模式下,这时this会返回undefined

现在有一个提案,在语言标准的层面,引入globalThis作为顶层对象。也就是说,任何环境下,globalThis都是存在的,都可以从它拿到顶层对象,指向全局环境下的this。

相关文章

  • ES6语法

    const 与 let变量

  • let和const

    let/const(常用) let和var 区别 let,const用于声明变量,用来替代老语法的var关键字,与...

  • ES6_var、let与const

    var,let 与 const var 申明变量。 let 申明变量,更完美的 var。 const 申明常量(物...

  • ES6

    let , const const 与 let 的区别:1. 声明时必须赋值 2.只能赋值一次 let 存在暂时...

  • 我读ES6--变量声明

    1.关于var和let、const let、const与var一样,都是用来声明变量,但都有其特殊的用途。let ...

  • ES6

    let const let const 没有变量提升let 块级作用域const 常量 模板语言, restfu

  • ES6-let & const

    一. let与var let 是块级作用域;var 是函数级作用域。 二. let 与 const let与con...

  • JavaScript 变量宣告 var let const

    宣告变量有三种方式: var let const var 与 let、const 的主要差异在于作用域。 作用域(...

  • Let 与 Const

    有幸在网上找到了 《Exploring ES6》一书的电子版,赶紧下载下来拜读一番。此书为英文版本,暂无中文翻译版...

  • let与const

    let用法 ES6新增了let命令,用法与var类似,主要用于声明变量,且逐渐代替var,与var的区别为,其声明...

网友评论

      本文标题:let 与 const

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