就是最新的JavaScript 原来的是var,要求不严格,不能限制修改,函数级 es6要求严格 1.防止重复声明 let      变量=var const 常量 2.控制修改 const常量不能修改 3.块级作用域 输出3个i var  function 函数一个按钮一个i(没有function,只有一个值=3) let与上面等价 解构赋值 1.两边结构必须一样 2.右边必须得是个正确写法的东西 3.赋值和解构同时完成(写一起) json={a:12,b:15} let {a,b}=json…
一.基本语法 1.1.声明变量的六种方法 参看地址:http://es6.ruanyifeng.com/#docs/let let:局部变量,块级作用域,声明前使用报错 var:全局变量,声明前使用 undefined const:声明一个只读的常量.一旦声明,常量的值就不能改变.只是内存地址不变,如果是对象,内存不变属性对应的值可变 function: import: class: 1.2.变量解构赋值 参看地址:http://es6.ruanyifeng.com/#docs/destruct…
系列文章 -- ES6笔记系列 解构赋值,即对某种结构进行解析,然后将解析出来的值赋值给相关的变量,常见的有数组.对象.字符串的解构赋值等 一.数组的解构赋值 function ids() { return [1, 2, 3]; } var [id1, id2, id3] = ids(); console.log(id1, id2, id3); // 1 2 3 如上,解析返回的数组,取出值并赋给相应的变量,这就是解构赋值 1. 还可以嵌套多层,只要相应的模式匹配了就能解析出来 var [a,…
解构就是ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值(只能用于数组,对象或迭代器).如果解构不成功,则等于undefined,但不能赋值为undefined和null,因为undefined和null不属于数组或对象 1 数组的解构赋值 数组的解构赋值就是,按照数组元素的次序,取出它位置所对应的值,具体如下 var [a, b, c] = [1, 2, 3]; // a=1;b=2;c=3 相当于var a=1, b=2, c=3; // 也可以用于let,const声明变量 l…
1.let ES6中新增的用于声明变量的关键字. let 声明的变量只在所处于的块级有效. 注意:使用 let 关键字声明的变量才具有块级作用域,var 关键字是不具备这个特点的. 1. 防止循环变量变成全局变量. 2. 不存在变量提升 3. 暂时性死区 if(true){ let a=10; } console.log(a); // a is not defined //防止循环变量变成全局变量 for(var i=0;i<2;i++){ } console.log(i); // i=2(只有…
​ ES6的目标是使得JavaScript语言能够用来编写大型的复杂的应用程序.成为企业级开发语言:该标准已于2015年6月17日正式公布. 可是真正的普及我觉得还得须要一段时间.然而这并非理由让我们不去了解ES6.更重要的一点是,Google公司的V8引擎已经部署了ES6部分特性,对于NodeJS的开发人员来说应该熟练掌握. ​ 在浏览器没有全面支持的情况下,Google公司推出了Traceur转码器(https://github.com/google/traceur-compiler),可将…
用var变量是有作用域的 变量在函数内部声明时,那么该变量只属于整个函数体,函数外不可调用 当两个不同的函数里,使用了用一个相同的变量名,二者不互相影响,相互独立 遇到嵌套函数时,外部函数不可调用内部函数的变量,而内部函数可调用外部函数变量 当遇到同一变量时,也是同理,"就近原则" 变量提升 JavaScript的函数定义有个特点,它会先扫描整个函数体的语句,把所有申明的变量"提升"到函数顶部 function test(){ var x = 'test, ' +…
[系统学习ES6] 本专题旨在对ES6的常用技术点进行系统性梳理,帮助大家对其有更好的掌握,希望大家有所收获. ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构.解构是一种打破数据结构,将其拆分为更小部分的过程. 为何使用解构 传统写法中,从数组或对象中提取特定数据赋值给变量,编写了很多结构相同,变量不同的代码,例如: let option = { name:'foo', type:'string' }; let name = option.name; let type…
变量的解构赋值 (1) 数组的解构赋值 1.基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring ). 只要等号两边的模式相同,左边的变量就会被赋予对应的值. let [foo, [[bar], baz]] = [1, [[2], 3]]; foo // 1 foo // 1 bar // 2 baz // 3 let [ , , third] = ["foo", "bar", "baz&quo…
本文的Demo的运行环境为nodeJS, 参考:让nodeJS支持ES6的词法----babel的安装和使用 : 解构赋值是一种表达式, 利用这种新语法, 可以直接从数组或者对象中快速提取值 赋值给不同的变量, 利用这种写法的好处是减少了代码量, 一定程度优化了代码, 也有一点缺点就是阅读代码不再那么直观了. 解构赋值最简单的例子 <script> "use strict"; let [a,b,c] = [1,2,3]; console.log( a +"|&qu…