解构赋值的 用途!:
1.交换变量值:
[x,y] = [y,x];
2.从函数返回多个值
//返回多个值
function example(){
        return [1,2,3];
}
var [a,b,c] = example();
//返回一个对象
function example(){
        return {foo:1,bar:2}
}
var {foo , bar} = example();
3.函数参数定义
//形参数组定义
function f([x,y,z]){...}// f([1,2,3])  有序对应,位置要一致
//形参对象定义、
function f({x,y,z}){...}// f({z:10,x:8,y:7})  无序对应,但属性名要一致
4.提取JSON数据(重要)
var jsonData = {
        id : 42,
    status: "OK",
    data: [86,123]
}
 
let {id,status,data:number} = jsonData;
console.log(id,status,number)
// 42, OK, [86,123]
上面代码我们看到可以快速提取json
5.函数参数默认值
$.ajax(url,
{async = true, beforeSend = function(){},cache = true,complete = function(){},crossDomain = false,global = true}
){
//具体操作... 
};
指定函数默认值,就能避免函数内部再写 var foo = config.foo || 'default foo';
6.遍历Map结构
var map = new Map();
map.set('first','hello');
map.set('second','world');
//for...of...遍历
for(let [key, value] of map){
        console.log(key + " is "+ value);
}
//first is hellow
//second is world
如果只想获取键名 
for (let [key] of map){...}
如果只想获取键值
for (let [,value] of map){...}
7.输入模块的指定方法
在加载模块时,往往需要指定输入哪些方法。解构赋值使得输入语句非常清晰。
const { SourceMapConsumar, SourceNode } = require("source-map");

smallStone
419 声望71 粉丝

前端一枚^_-


« 上一篇
ES6解构赋值
下一篇 »
node的path解释