エレガントES6 (1)

1. 解体と代入—「空から降ってきた」価値観

/** 常用的取值方法 **/
const obj = {
    
    
	a: 1,
	b: 2,
	c: 3
}

const a = obj.a
const b = obj.b
const c = obj.c

/** 解构赋值 **/
const obj1 = {
    
    
	a1: 1,
	b1: 2,
	c1: 3
}
const {
    
     a1, b1, c1 } = obj1

2. Set object / ... (スプレッド演算子) - 「エレガントな」マージ配列

/** 常用合并数组方法 **/
const arr = []
const arr1 = [1,2,3]
const arr2 = [1,3,6]
arr1.forEach(v => {
    
    
	arr.push(v)
})
arr2.forEach(v => {
    
    
	arr.push(v)
})
console.log(arr) // [1,2,3,1,3,6]

/** Set对象与... **/
const arr3 = [...arr1,...arr2]
console.log(arr3) // [1,2,3,1,3,6]

const arr4 = [...new Set([...arr1,...arr2])]
console.log(arr4) // [1,2,3,6] 

3.Array.flat() - 複数のトラバーサル現象の「終了」

/** 常用方法遍历多维数组 **/
const deps = [1,[2,3],[4,[5,6]]]
let num = []
for(let item in deps){
    
    
	const value = deps[item]
	if(Array.isArray(value)){
    
    
		num = [...num,...value]
	}else{
    
    
		num.push(value)
	}
}
console.log(num) // [1,2,3,4,[5,6]]

let res = []
for(let _item in num){
    
    
	const value = num[_item]
	if(Array.isArray(value)){
    
    
		res = [...res,...value]
	}else{
    
    
		res.push(value)
	}
}
console.log(res) // [1,2,3,4,5,6]

/** Array.flat() **/
const nums = deps.flat(Infinity)
console.log(nums) // [1,2,3,4,5,6]

おすすめ

転載: blog.csdn.net/weixin_42371354/article/details/123749140