简说ES6中的变量定义:let、const
来源:互联网 发布:明星代言页游 知乎 编辑:程序博客网 时间:2024/09/21 08:17
随着ES6的关注度的增高,今天有必要介绍下ES6中用let、const来定义变量。
总说:
const 关键字用在那些永远不会改变的变量申明, let 用在其他变量申明上。
(1)var 和let
var,在离它最近的父函数内创建了一个变量的作用域 。
let, 在它最近的块级中创建作用于,这些块包括 for 循环, if 语句以及其他块。
用实例来说话:
实例-1
function fn ( ) { console . log ( x ) ; console . log ( y ) ; var x = 1 ; if ( x === 1 ) { let y = 2 ; } console . log ( y ) ;}fn ( ) ;console . log ( x ) ;
例中,创建了一个 fn 函数,并且调用它。最后一个 console.log()语句会产生一
个 ReferenceError ,因为 x只在 fn() 中定义(作用域)。因为变量提升,第一个
console.log()将被正常执行。在这个示例中, x 是 undefined 。第二和第三个
console.log(y) 都将出错,因为 let 比 var 的作用于更加严格。 y 变量 只存在于 if 块里面,
不在任何其他地方。俗称“ 临时死亡区 “。
实例-2:
function fn ( x ) { let y ; if ( x == 1 ) { y = 2 ; } console . log ( y ) ;}fn (1) ;console . log ( y ) ;
在实例-2中,y有比实例-1更大范围的作用域。由两个实例的对比,在ES6中 let 应该完全取
代 var 。
(2)const
在ES6中, const 代表一个值的 常量索引 (大多数语言都提供这样的功能),即:变量名字在
内存中的指针不能够改变,但是指向这个变量的值 可能改变。并不是一个常量。
(3)说明
新的 let 和 const 关键字在ES5中是不生效的,并且在绝大多数可执行环境中也不生效。
但是,通过类似 Babel 优秀的编译器, 我们可以将我们写的ES6 JavaScript代码编译为可在浏
览器环境中执行的ES5代码。
0 0
- 简说ES6中的变量定义:let、const
- ES6中的let const
- 在JavaScript ES6中使用let和const定义变量
- ES6中的变量 let 和const的区别
- ES6 中的 let 和 const
- es6中的const和let
- [Wondgirl]ECMAScript6(ES6)(二)变量let、var和常量const的定义和区别
- JavaScript ES6中的var、let、const
- js变量中有var定义和无var定义的区别,es6中let命令和const命令
- const,let,var 定义变量的区别
- 【ES6】let和const
- es6 箭頭函數 let, const
- es6---(let const)
- es6 let和const
- ES6---let与const
- ES6之let,const
- ES6-let,const
- [es6] let & const
- execute immediate 运行动态SQL
- 验证码 倒计时
- Java 获取字符串中第N次出现的字符位置
- 160. Intersection of Two Linked Lists(Linked List)
- 图片控件,动画控件
- 简说ES6中的变量定义:let、const
- Eclipse中使用SVN
- Android:ImageView代码设置background和src
- Oracle Database的安装与卸载
- js刷新页面方法大全
- Linux系统终端批量替换文本
- chrome 文件上传路径问题
- 如何让APP在最短的时间内上线
- CV_EXPORT定义的作用,lib及dll的区别