资讯专栏INFORMATION COLUMN

let和const声明

thursday / 1001人阅读

摘要:和命令命令所声明的变量只在命令所在的代码块内有效。在相同作用域中不允许重复声明块级作用域实际上为新增了块级作用域允许块级作用域的任意嵌套。规定,函数只能在顶层作用域和函数作用域中声明,不能再块级作用域中声明。

let和const命令 let 命令:

所声明的变量只在let命令所在的代码块内有效。

for循环的计数器就很适合使用let命令。

不存在变量提升

暂时性死区:只要块级作用域内存在let命令,它所声明的变量就“绑定“在这个区域,不在受外部的影响。

在相同作用域中不允许重复声明

块级作用域

let实际上为javascript新增了块级作用域

ES6允许块级作用域的任意嵌套。

ES5规定,函数只能在顶层作用域和函数作用域中声明,不能再块级作用域中声明。

ES6引入了块级作用域,明确允许在块级作用域之中声明函数。在块级作用域中,函数声明语句的行为类似于let,在块级作用域之外不可引用。

do表达式

在块级作用域之前加上do,使它变为do表达式,然后就会返回内部最后执行的表达式的值。

const命令

声明一个只读常量,一旦声明,常量的值就不能改变。

实际上const保证的并不是变量的值不得改动,而是变量指向的那个内存地址不得改动。

对于简单类型的数据,值就保存在变量指向的那个内存地址。

而对于复合类型的数据,变量指向的内存地址,保存的只是一个指针,const保证这个指针固定,而它指向的数据结构是不能控制的。

ES6声明变量的六种方法

ES5:var 和 function
ES6:let, const, import, class

顶层对象的属性

顶层对象,在浏览器环境指的是window对象,在node指的是global对象。ES5之中,顶层对象的属性与全局变量是等价的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/92616.html

相关文章

  • ES6学习 第一章 let const 命令

    摘要:外层作用域不报错正常输出块级作用域与函数声明规定,函数只能在顶层作用域和函数作用域之中声明,不能在块级作用域声明。规定,块级作用域之中,函数声明语句的行为类似于,在块级作用域之外不可引用。同时,函数声明还会提升到所在的块级作用域的头部。 前言:最近开始看阮一峰老师的《ECMAScript 6 入门》(以下简称原...

    番茄西红柿 评论0 收藏2637
  • javascript中var、letconst声明的区别

    摘要:声明的变量存在变量提升,声明的变量不存在变量提升。声明的变量允许重新赋值,声明的变量不允许重新赋值。注意跨脚本声明重复变量也会报错。中出现的任何元素在声明中出现,语法错误。中的是如此的怪异。对中的声明进行实例化。 我在上一篇文章javascript中词法环境、领域、执行上下文以及作业详解中的最后稍微提到了有关var、let、const声明的区别,在本篇中我会重点来分析它们之间到底有什么...

    Yujiaao 评论0 收藏0
  • varlet/const的区别

    showImg(https://segmentfault.com/img/remote/1460000017757580); let和const是 ES6 新增的命令,用于声明变量,这两个命令跟 ES5 的var有许多不同,并且let和const也有一些细微的不同,再认真阅读了阮一峰老师的文档后,发现还是有一些不知道的细节... 博客、前端积累文档、公众号、GitHub 内容: var和let...

    SHERlocked93 评论0 收藏0
  • 深入理解ES6 - var-let-const

    摘要:声明变量不存在变量提升。临时死区,而且不能在声明之前访问它。禁止重复声明相同的变量,否则报错。不存在变量提升,一旦执行快外就会立即销毁。声明不允许修改绑定,但允许修改值,也就是说用创建对象后,可以修改该对象的属性值。 知识点 var 声明变量: 1、存在变量提升,实际上var无论在哪里声明,都会被当做当前的作用域顶部声明变量。 2、可以重复声明,后声明的变量会覆盖前声明的变量。 let...

    alexnevsky 评论0 收藏0
  • let,const与var的比较

    摘要:声明一个只读的常量。的作用域与命令相同只在声明所在的块级作用域内有效。这在语法上,称为暂时性死区,简称。暂时性死区也意味着不再是一个百分之百安全的操作。重复声明是允许在相同作用域内重复声明同一个变量的,而与不允许这一现象。 转载自阮一峰老师的ES6入门,稍有修改 1.基本概念MDN var声明了一个变量,并且可以同时初始化该变量。let语句声明一个块级作用域的本地变量,并且可选的赋予...

    lemon 评论0 收藏0
  • javascript 声明变量var、letconst详解及示例

    摘要:概述发布前,只能通过声明变量的方式,常量块级变量函数变量这些概念的差别都不能很好的体现出来,于此同时,加入你要使用或者提供一个,声明的变量可随时被修改和重新分配的问题,会让你时刻担心代码是否能正常运行。 1. var、let、const概述 ES6发布前,Javascript只能通过var声明变量的方式,常量、块级变量、函数变量这些概念的差别都不能很好的体现出来,于此同时,加入你要使用...

    tuomao 评论0 收藏0

发表评论

0条评论

thursday

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<