ES6中关于var与let笔记

let是ES6新增的指令,她得多用范围是在块作用于内有效比:

在花括号外输出定义的str会报错,但是单独输出age是正确的。

此外,var命令会发生”变量提升“现象,就是说你可以先使用变量,然后再声明,值为undefined。这种现象多多少少是有些奇怪的,按照一般的逻辑,变量应该在声明语句之后才可以使用。但是是用let是完全符合这个逻辑的,即先声明变量,然后再使用,不然会报错:

上面代码中,变量age用var命令声明,会发生变量提升,即在运行前,变量age已经存在了,但是没有值,所以会输出undefined。变量sex用let命令声明,先声明后输出是正确的。但是变量nickname先输出,会报错,这表示在声明它之前,变量nickname是不存在的,这时如果用到它,就会抛出一个错误。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,235评论 0 13
  • let 命令 块级作用域 const 命令 顶层对象的属性 global 对象 let 命令 基本用法 ES6 新...
    嘉奇呦_nice阅读 1,653评论 0 2
  • let 和 const 命令 let 命令 块级作用域 const 命令 顶层对象的属性 gl...
    安小明阅读 1,000评论 0 0
  • let 命令 块级作用域 const 命令 顶层对象的属性 global 对象 let 命令 基本用法 ES6 新...
    卞卞村长L阅读 630评论 0 0
  • 我:“生日快乐,凯哥” 凯:“你都忘了,不开心” 我:“。。。。。。” 我:“好吧,我承认,我忘了” 凯:“。。。...
    或许就在眼前阅读 226评论 10 9