标签:ES6 运算符 解构 学习 let var foo 赋值
1. let 与 const
let 声明的变量只在 let 命令所在的代码块内有效。
let 是在代码块内有效,var 是在全局范围内有效.
let 只能声明一次 var 可以声明多次.
for 循环计数器很适合用 let.
let 不存在变量提升,var 会变量提升.
const 声明一个只读的常量,一旦声明,常量的值就不能改变。
2. 解构赋值
解构赋值是对赋值运算符的扩展。他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。
数组模型的解构(Array):
基本: let [a, b, c] = [1, 2, 3] // a = 1, b = 2, c = 3
可忽略: let [a, , b] = [1, 2, 3] // a = 1, b = 3
剩余运算符: let [a, ...b] = [1, 2, 3] // a = 1, b = [2, 3]
当解构模式有匹配结果,且匹配结果是 undefined 时,会触发默认值作为返回结果: let [a = 3, b = a] = []; // a = 3, b = 3
对象模型的解构(Object):
基本: let { foo, bar } = { foo: 'aaa', bar: 'bbb' } // foo = 'aaa', bar = 'bbb'
剩余运算符: let {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40} // a = 10, b = 20, rest = {c: 30, d: 40}
解构默认值: let {a = 10, b = 5} = {a: 3} // a = 3; b = 5
标签:ES6,运算符,解构,学习,let,var,foo,赋值 来源: https://www.cnblogs.com/james2306/p/15637255.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。