您的位置:首页 > 其它

ES6 解构赋值用途

2017-12-08 13:43 351 查看
1.交换变量的值
2.从函数返回多个值
3.函数参数的定义
4.提取json数据
5.函数参数的默认值
6.遍历Map结构
7.输入模块的指定方法

 
1.交换变量的值
// es5
console.log("es5");
var a = 100;
var b = 200;
var temp;
temp = a;
a = b;
b = temp;
console.log(a, b)

// es6
console.log("es6")
var x = 1000,
y = 2000;
[x, y] = [y, x];
console.log(x, y)
/* es6 解构赋值用途二 从函数返回多个值 */
/* es6 解构赋值用途二  从函数返回多个值 */
// es5
function fun() {
return [1, 2, 3]; // 返回多个值必须返回一个对象或数组
// return {
//     x: 2,
//     y: 3
// }
};
// es6
var [x, y, z] = fun();
console.log(x, y, z); // 1 2 3
// 对象
// es5
function fun1() {
return {
id: 2,
name: 'zasdasd'
}
};
// es6
var {
id,
name
} = fun1();
console.log(id, name); //2 "zasdasd"
var {
id: newId,
name: newName
} = fun1();
console.log(newId, newName); //2 "zasdasd"

  

3.函数参数的定义

<script>
// 参数是一组有次序的值 如数组
function fun([x, y, z]) {
//x=1
//y=2
//z=6
console.log(x, y, z)
};
fun([2, 4, 6]);

// 参数是一组无次序的值 如对象
function bun({
x,
y,
name
}) {
console.log(x, y, name)
}
bun({
x: 200,
name: "asd",
y: 2
});
</script>

  

4.提取json数据

var jsonDate = {
id: 7,
name: "sad",
age: 99,
img: {
pic1: 'asd',
pic2: 'sss'
}
};
console.log(jsonDate);
let {
id: num,
name,
age,
img: xxx
} = jsonDate
console.log(num, name, age, xxx.pic1)

  

 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: