ES6—解构赋值的用途

来源:互联网 发布:应力应变数据记录器 编辑:程序博客网 时间:2024/05/22 12:22

交换变量的值

let x = 1;let y = 2;[x, y] = [y, x];

从函数返回多个值

//返回一个数组function exp(){    return [1,2,3]}let [a,b,c] = exp()//返回一个对象function exp(){    return {        status:'ok',        data:'success'    }}let {status,data} = exm()

函数参数的定义

//参数是一组有次序的值function f([x,y,z]){...}f([1,2,3])//参数是一组无次序的值function f({x,y,x}){...}f({z:3,y:2,x:1})

提取json数据

let jsonData = {    status:'ok',    data:'这是返回的数据'}let {status,data} = jsonData

函数参数的默认值

指定参数的默认值,就避免了在函数体内部再写var foo = config.foo || ‘default foo’;这样的语句。

jQuery.ajax = function (url, {  async = true,  beforeSend = function () {},  cache = true,  complete = function () {},  crossDomain = false,  global = true,  // ... more config}) {  // ... do stuff};

遍历Map结构

var map = new Map();map.set('first', 'hello');map.set('second', 'world');for (let [key, value] of map) {  console.log(key + " is " + value);}// first is hello// second is world

如果只想获取键名,或者指向获取键值,可以这样写:

// 获取键名for (let [key] of map) {  // ...}// 获取键值for (let [,value] of map) {  // ...}

输入模块的指定方法

const { SourceMapConsumer, SourceNode } = require("source-map")

文章参考: 阮一峰ECMAScript6入门

0 0
原创粉丝点击