<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>es6 解构</title>
</head>
<body>
<script>
/*
* 解构 对象
* 更快、更便捷
*/
let expense = {
type:"es6",
amount:"45"
};
// es5
// let type = expense.type;
// let amount = expense.amount;
// console.log(type,amount);
// es6
let{type,amount} = expense;
console.log(type,amount);
// es5
let saveFiled = {
extension: "jpg",
name:"girl",
size:14040
};
function fileSammary1 (file) {
return `${file.name}.${file.extension}的大小是${file.size}px`;
}
console.log(fileSammary1(saveFiled));
//es6
function fileSammary2 ({name,extension,size}) {
return `${name}.${extension}的大小是${size}px`;
}
console.log(fileSammary2(saveFiled));
/*
* 解构 对象、数组
* 更快、更便捷
*/
const names = ["Henry","Bucky","Emily"];
// 解构数组
const [name1,name2,name3] = names;
console.log(name1,name2,name3);
// 返回数组个数
const {length} = names;
console.log(length);
// 结合展开运算符
const [name,...rest] = names;
console.log(name);
console.log(rest);
// 对象数组
const people = [
{name:"Henry",age:20},
{name:"Bucky",age:25},
{name:"Emily",age:30},
]
// es5
let age1 = people[0].age;
console.log(age1);
// es6
let [{age}] = people; // 1:解构数组 [age] = {name:"Henry",age:20} 2:解构对象 {age} = {age:20}
console.log(age);
// 使用场景 将数组转化为对象
let points = [
[4,5],
[10,1],
[0,40]
];
// 期望实现 let points = [
// [x:4,y:5],
// [x:10,y:1],
// [x:0,y:40]
// ];
let newPoints = points.map(([x,y]) => {
return {x,y}; // {x,y} = {x:x,y:y}
});
console.log(newPoints);
</script>
</body>
</html>
es6 解构对象及数组
最新推荐文章于 2023-10-17 13:43:46 发布