美文网首页
es6块级作用域

es6块级作用域

作者: 蓝色梦想家 | 来源:发表于2017-07-25 15:44 被阅读0次

var 声明
在函数作用域或全局作用域中通过var声明的遍历,不管是哪里声明的,都会当成当前作用域顶部声明的变量。(常说的提升机制)
var声明缺少块级作用域的概念。
举例说明:


Paste_Image.png

上面三个地方都可以访问value 值为undefined;

let声明
let声明的用法与var相同。用let代替var声明变量,可以吧变量的作用域限制在当前的代码块中。let没有提升机制,所以通常将let声明语句放在封闭代码块的顶部,以便代码块都可以访问;

Paste_Image.png

上面三处都不能访问value,只有在demo为真的时候才创建value 并赋值{}之外都不能访问。

let禁止重声明


Paste_Image.png

同一作用域不能用let重复定义已经存在的表示符。

const声明
使用const声明的是常量,值设定后不可更改。所以通过const声明的常量必须进行初始化
不初始化将报错


Paste_Image.png
 const声明与let最大的不同是const定义的常量不能重新赋值,否则会报错
Paste_Image.png

var 声明变量
var声明变量有

相关文章

  • js 作用域链 和 原型链

    作用域链 js拥有全局作用域(window)、函数作用域、块级作用域(es6)。块级作用域是es6开始才拥有的,因...

  • JS基础知识(2) -- 作用域和作用域链

    作用域 作用域就是变量与函数的可访问范围 全局作用域 函数作用域 ES6块级作用域 ES5没有块级作用域,ES6有...

  • js 作用域

    js 作用域主要有:全局作用域和局部作用域,es5之前没有块级作用域,es6有了块级作用域 何为块级作用域,块级作...

  • let 和 const

    一、JS中的块级作用域 ES6之前JS不支持块级作用域在ES6之前,JS是没有块级作用域这个概念的,只有全局作用域...

  • ES6分享会总结

    学到的内容 ES6的块级作用域 1. 块级作用域的概念 2. ES6允许在块级作用域内声明函数 3. 函数在块级作...

  • 你真的懂let和const吗?

    块级作用域 在ES6之前我们脑海里应该只存在全局作用域和函数级作用域,没有块级作用域。那么为什么要引入块级作用域呢...

  • ES6语法--let和const

    1:let和const:作用域,全局作用域,函数作用域以及块级作用域(es6)。 let声明的变量只在块级作用域内...

  • ES2015(ES6)学习手册

    作用域 全局作用域 函数作用域 块级作用域(es6) let let 声明的变量只在所处的块级有效 let没有变量...

  • 块级绑定

    因为ES6之前存在变量提升问题,容易造成问题,ES6引入了块级作用域。 块级声明 块级作用域在函数或者块({})中...

  • 前端(ES6)

    1.块级作用域的引入 在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域。 l...

网友评论

      本文标题:es6块级作用域

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