ES6用法

1、取值

const obj = {
	name: '彭于晏',
	sex: '男',
	age: 18
}
let { age } = obj // 18
如果创建的变量名 和 对象的属性名 不一致 
let { age: year } = obj // year = 18
解构的对象 不能是 null  undefined 
let { age: year } = obj || {}
obj为nullundefined时就赋值{}

2、合并数组、对象

const a = [1, 2, 3];
const b = [1, 5, 6];
const c = [...new Set([...a,...b])] // [1, 2, 3, 5, 6]

const obj1 = {
  a: 1
}
const obj2 = {
  b: 1
}
const obj = { ...obj1, ...obj2 } // { a: 1, b: 1 }

3、字符串拼接

const name = '小明'
const score = 59
const result = `${name}${score > 60 ? '成绩及格' : '成绩不及格' }`

4、精准搜索用 find
find 找到符合条件之后 不会继续遍历数组

const a = [1, 2, 3, 4, 5]
const result = a.find(item => {
		return item === 3 // 返回当前item
	}
)

5、扁平化数组

const deps = {
    '采购部': [1, 2, 3],
    '人事部': [5, 8, 12],
    '行政部': [5, 14, 79],
    '运输部': [3, 64, 105]
}
let member = Object.values(deps).flat(Infinity) // [1, 2, 3, 5, 8, 12, 5, 14, 79, 3, 64, 105]
Infinity作为flat的参数,无需知道被扁平化的数组的维度

6、 添加对象属性

let obj = {}
let index = 1
obj[`topic${index}`] = '话题内容'

7、?? || 两者之间的区别

A ?? B   空值合并运算符
Anull nudefined 时 取 B 
A0 '' 时 取 A

A || B
Anull undefined 0 '' 时 取 B

8、异步函数

const fn = async () => {
  const res1 = await fn1()
  const res2 = await fn2()
}

9、移除对象属性

let obj = {
   x: 45, 
   y: 72, 
   z: 68, 
   p: 98
}

// Longhand
delete obj.x
delete obj.p
console.log(obj) // { y: 72, z: 68 }

// Shorthand
let { x, p, ...newObj } = obj;
console.log(newObj); // { y: 72, z: 68 }

10、key value 一致时 可写为一个

let firstname = 'Amitav'
let lastname = 'Mishra'

//Longhand
let obj = { firstname: firstname, lastname: lastname }

//Shorthand
let obj = { firstname, lastname }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值