// 1.变量形式的赋值
var {name,age} = [age:30,name:"Bill"];
console.log(name,age);
var {value1,value2} = {value1:30};
console.log(value2);//undefined
// 2.对象形式的赋值
var {product:,price:b} = {product:"iphone7",price:5000};
console.log("a = " + a," b = " + b);
// 3.混合形式的赋值
var {product:a,price} = {product:"iphone7 plus",price:6000};
console.log("a = " + a);
console.log("price = " + price);
// 4.变量的重复声明
//let {v1,v2} = {v1:20,v2:40};
//let v1 = 40;//error
let {p:m} = {p:"hello"};
//let p = "world";
//let m = 20;
// 5.嵌套赋值
var obj = {p:["hello",{x:100}]};
var {p:[s,{x,y}]} = obj;
console.log("s = " + s);
console.log("y = " + y);
console.log("p = " + p);
// 6.字符串的解构赋值
let [a,b,c,d,e] = 'hello';
console.log(a); // h
console.log(b); // e
console.log(c); // l
console.log(d); // l
console.log(e); // o
const {length:len} = "How are you?";
console.log(len); //12
//函数的解构赋值
function sub([x,y])
{
return x - y;
}
console.log(sub([1,3]));//-2
function sub3({x = 0,y = 1})
{
return x - y;
}
consonle.log(sub3({x:30})); // 29
console.log(sub3()); // error
console.log(sub3({})); // -1
//提取JSON数据
//1.定义json数据
var jsonData =
{
id:18,
name:"mike",
salary:4000
};
//2.提取json数据
let {id,name,salary} = jsonData;
console.log(id,name,salary);//18,mike,4000
//函数参数可以使用默认值
function fun(name,{flag = true,num = 100})
{
console.log(name,flag,num);//BILL,trun,100
}
fun("BILL",{});//{}不能省略
[Wondgirl]ECMAScript6(ES6)(五)对象的解构赋值
最新推荐文章于 2024-08-22 20:42:51 发布