在线编译器:babel.github 在nongjs中使用 'use strict' let a = ; 运行node : node --harmony_destructuring xxx.js 代码块: 用{}包起来的代码块,比如 if for while 特点:只能在代码块里面使用 var 只有函数作用域,可以重复声明, let const 有块级作用域,不可重复声明 封闭空间 ES5: (function() { ; })(); ES6: { let a = ; } 总结:块级作用域,其实
ES6 通过字面量语法扩展.新增方法.改进原型等多种方式加强对象的使用,并通过解构简化对象的数据提取过程. 一.字面量语法扩展 在 ES6 模式下使用字面量创建对象更加简洁,对于对象属性来说,属性初始值可以简写,并可以使用可计算的属性名称.对象方法的定义消除了冒号和 function 关键字,示例如下: // Demo1 var value = "name", age = 18 var person = { age, // age: age ['my' + value]: 'Jenny
(1)变量的解构赋值 基本用法:ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). let a = 1; let b = 2; let c = 3; //ES6 允许写成下面这样. let [a, b, c] = [1, 2, 3]; 本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值. tips:ES6 内部使用严格相等运算符(===),判断一个位置是否有值.所以,只有当一个数组成员严格等于undef
本文摘自ECMAScript6入门,转载请注明出处. ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring).不仅适用于var命令,也适用于let和const命令. 一.数组的解构赋值 1. 基本用法: //以前,为变量赋值,只能直接指定值. var a = 1; var b = 2; var c = 3; //ES6允许写成下面这样. //这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值. var [a, b, c
ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构. 解构有三种类型: 1.数组的解构赋值 (1)简单的数组解构 以前,我们给变量赋值是直接单个指定值,比如: let a=0; let b=1; let c=2; 数组解构的方式来进行赋值,如下: let [a,b,c]=[1,2,3]; 总结:从数组中提取值,按照位置的对象关系(次序)对变量赋值. (2)数组模式和赋值模式统一 可以简单的理解为等号左边和等号右边的形式要统一,如果不统一解构将失败.相关代码如下: let