文章目录
- 1. Object.fromEntries()
- 2. trimStart() 和 trimEnd()
- 3. 数组的flat() 和flatMap()
- 4. Symbol 对象的description 属性
- 5. try ... catch(e){}
1. Object.fromEntries()
Object.fromEntries() 方法允许你轻松地将键
值对列表转换为对象
let arr = [["name","kerwin"],["age",100]]
console.log(Object.fromEntries(arr))
- 用处1 – 能把Map 转换为普通对象
let m = new Map()
m.set("name","tiechui")
m.set("age",100)
console.log(Object.fromEntries(m))
- 用处2 – 将格式代码转换为对象
let str = "name=xiaoming&age=18*
let seatchParams = new URLSearchParams(str)
console.log(Object.fromEntries(seatchParams))
- 用处3 – 将对象转换为对象(属性变化)
let obj= {
"A":["A1","A2","A3"],
"B":["B1","B1"],
"c":["c1"]
}
let myarr = Object.entries(obj)
// console.log(myarr)
let mynewarr = myarr.map(([key,value])=>
[key,value.length]
)
console.log(Object.fromEntries(mynewarr))
2. trimStart() 和 trimEnd()
trimStart() 和trimEnd() 方法在实现与trimLeft() 和trimRight() 相同
let str = 'kerwin'
console.log("|"+str.trim()+"|")
console.log("|"+str.trimLeft()+"|")
console.log("|"+str.trimRight()+"|"
console.log("|"+str.trimstart()+"|"
console.log("|"+str.trimEnd()+"")
3. 数组的flat() 和flatMap()
这点内容在ES6 学习部分已经提前学过了。
4. Symbol 对象的description 属性
为Symbol 对象添加了只读属性description ,该对象返回包含Symbol 描述的字符串。
let s1 = Symbol("name")
console.log(s1.description)
// name
5. try … catch(e){}
let pro1 = new Promise(function(resolve,reject){
// 执行器函数
setTimeout(()=>{
resolve("成功的结果")
},30000)
})
let pro2 = new Promise(function(resolve,reject){
// 执行器函数
setTimeout(()=>{
reject()
},2000)
工
})
async function test(){
try{
await Promise.race([pro1,pro2])
}
catch {
console.1og("超时")
}
// catch (error){
// console.1og("错误")
// }
test()
// 超时