// 设置数组 const avengers = ['Tony Stark', 'Steve Rogers', 'Natasha Romanoff']; // 把数组解构赋值给变量。数组模式位于赋值运算符 `=` 的左侧,被结构的数组在 // 其右侧。 const [ironMan, cap, blackWidow] = avengers; // ironMan = 'Tony Stark' // cap = 'Steve Rogers' // blackWidow = 'Natasha Romanoff' // 输出 ironMan: ironMan;
const avengers = ['Tony Stark', 'Steve Rogers', 'Natasha Romanoff']; // 我们不用用到Tony const [, cap, blackWidow] = avengers; // ironMan = Error: undefined // cap = 'Steve Rogers' // blackWidow = 'Natasha Romanoff' // 输出 cap: cap;
const avengers = ['Tony Stark', 'Steve Rogers', 'Natasha Romanoff']; // cap 缺失 const [ironMan, , blackWidow] = avengers; // ironMan = 'Tony Stark' // cap = Error: undefined // blackWidow = 'Natasha Romanoff' // 输出 blackWidow: blackWidow;
const avengers = ['Tony Stark', 'Steve Rogers', 'Natasha Romanoff']; // ironMan vs cap const [ironMan, cap] = avengers; // ironMan = 'Tony Stark' // cap = 'Steve Rogers' // blackWidow = Error: undefined // 输出 blackWidow: ironMan;
// Destructuring Nested Arrays
const avengers = [
'Natasha Romanoff',
['Tony Stark', 'James Rhodes'],
['Steve Rogers', 'Sam Wilson']
];
// Avengers and their partners
const [blackWidow, [ironMan, warMachine], [cap, falcon]] = avengers;
// blackWidow = 'Natasha Romanoff'
// ironMan = 'Tony Stark'
// warMachine = 'James Rhodes'
// cap = 'Steve Rogers'
// falcon = 'Sam Wilson'
// Output warMachine:
warMachine;
// 从该数组中提取 Pepper Potts
const avengers = [
'Natasha Romanoff',
[['Tony Stark', 'Pepper Potts'], 'James Rhodes'],
['Steve Rogers', 'Sam Wilson']
];
// Destructure
const [ , // 跳过 'Natasha Romanoff'
[[ , // 跳过 'Tony Stark'
hera // Pepper Potts 赋值给变量 'hera'
]]] = avengers;
// 请注意:你也可以这样写
// const [, [[, hera ]]] = avengers;
// 输出 hera:
hera;
// hera = 'Pepper Potts'
// 通过rest操作符解构 const avengers = ['Natasha Romanoff', 'Tony Stark', 'Steve Rogers']; const [blackWidow, ...theOthers] = avengers; theOthers; // blackWidow = 'Natasha Romanoff' // theOthers = ['Tony Stark', 'Steve Rogers'] // 输出 theOthers: theOthers;
//解构对象的属性值,赋给单个变量 `a`:
const { ironMan: a } = { ironMan: 'Tony Stark' };
// 输出 a:
a; // a = 'Tony Stark '
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff'
};
// Destructure object to individual variables
const {
ironMan: a,
cap: b,
blackWidow: c
} = avengers;
// a = 'Tony Stark '
// b = 'Steve Rogers'
// c ='Natasha Romanoff'
// Output a:
a;
// Setup our object
const avengers = {
blackWidow: 'Natasha Romanoff',
ironManCharacters: {
couple: {
ironMan: 'Tony Stark',
hera: 'Pepper Potts',
},
partner: {
warMachine: 'James Brodie'
}
},
capCharacters: {
cap: 'Steve Rogers',
partner: {
falcon: 'Sam Wilson'
}
}
};
// Destructure object to individual variables
const {
blackWidow: a,
ironManCharacters: {
couple: {
ironMan: b,
hera: c
},
partner: {
warMachine: d
}
},
capCharacters: {
cap: e,
partner: {
falcon: f
}
}
} = avengers;
// a = 'Natasha Romanoff'
// b = 'Tony Stark '
// c = 'Pepper Potts'
// d = 'James Brodie'
// e = 'Steve Rogers'
// f = 'Sam Wilson'
// Output a:
a;
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff'
};
// Destructure object to individual variables with meaningful names
const {
ironMan: ironMan,
cap: cap,
blackWidow: blackWidow
} = avengers;
// blackWidow = 'Natasha Romanoff'
// ironMan = 'Tony Stark '
// cap = 'Steve Rogers'
// Output blackWidow:
blackWidow;
// Setup our object
const avenger = {
ironMan: 'Tony Stark'
};
// Destructure object to individual variables with meaningful names
const {
ironMan // equivalent to 'ironMan: ironMan'
} = avenger;
// ironMan = 'Tony Stark '
// Output ironMan:
ironMan;
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff'
};
// Destructure object to individual variables with meaningful names
const { ironMan, cap, blackWidow } = avengers;
// Output ironMan:
ironMan;
// Setup our object
const avengers = {
blackWidow: 'Natasha Romanoff',
ironManCharacters: {
couple: {
ironMan: 'Tony Stark',
hera: 'Pepper Potts',
},
partner: {
warMachine: 'James Brodie'
}
},
capCharacters: {
cap: 'Steve Rogers',
partner: {
falcon: 'Sam Wilson'
}
}
};
// Destructure a deeply nested object
const { ironManCharacters: { couple } } = avengers;
// couple = {
// ironMan: 'Tony Stark',
// hera: 'Pepper Potts',
// }
// Output couple:
couple;
const avengers = {
ironManCharacters: {
couple: {
ironMan: 'Tony Stark',
hera: 'Pepper Potts',
}
}
};
const {
ironManCharacters: {
couple
}
} = avengers;
// Output couple:
couple;
const {
ironManCharacters: {
couple: couple
}
} = avengers;
const avengers = {
blackWidow: 'Natasha Romanoff',
ironManCharacters: {
couple: {
ironMan: 'Tony Stark',
hera: 'Pepper Potts'
}
}
};
const ironManProperties = {
family: {}
};
({
ironManCharacters: {
couple: ironManProperties.family
}
} = avengers);
ironManProperties.family
// ironManProperties.family = {
// ironMan: 'Tony Stark',
// hera: 'Pepper Potts'
// }
// Output ironManProperties.family:
ironManProperties.family;
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff'
};
// Destructure using defaults
const { ironMan, cap, blackWidow, theHulk='Bruce Banner' } = avengers;
// ironMan = 'Tony Stark'
// cap = 'Steve Rogers'
// blackWidow = 'Natasha Romanoff'
// theHulk = 'Bruce Banner'
// Output blackWidow:
blackWidow;
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff',
theHulk: 'Bruce Banner'
};
// Valid destructuring
const { ironMan } = avengers;
let { cap } = avengers;
var { blackWidow } = avengers;
// Invalid destructuring
let theHulk;
{ theHulk } = avengers;
// Error
// Output theHulk:
theHulk;
// Setup our object
const avengers = {
ironMan: 'Tony Stark',
cap: 'Steve Rogers',
blackWidow: 'Natasha Romanoff',
theHulk: 'Bruce Banner'
};
// A valid Hulk
let theHulk;
({ theHulk } = avengers);
// theHulk = 'Bruce Banner'
// Output theHulk:
theHulk;
// Note: this doesn't work!
function getTonyStark(avengers){
return { ironMan: { realName } } = avengers;
// return the avengers object, not the realName value
}
const avengers = {
ironMan: {
realName: 'Tony Stark'
}
};
const tonyStark = getTonyStark(avengers);
// tonyStark = {
// ironMan: {
// realName: 'Tony Stark'
// }
// };
// Output tonyStark:
tonyStark;
// Note: this DOES work!
function getTonyStark(avengers){
const { ironMan: { realName } } = avengers;
return realName;
}
const avengers = {
ironMan: {
realName: 'Tony Stark'
}
};
const tonyStark = getTonyStark(avengers);
// tonyStark = 'Tony Stark'
// Output tonyStark:
tonyStark;
function getTonyStark(avengers){
return ({ ironMan: { realName } } = avengers) && realName;
}
const avengers = {
ironMan: {
realName: 'Tony Stark'
}
};
const tonyStark = getTonyStark(avengers);
// tonyStark = 'Tony Stark'
// Output tonyStark:
tonyStark;
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有