1. async 和 await 代替 promise (即异步改同步)
methods:{
checkForm(){
return new Promise((resolve,reject)=>{
console.log(2)
resolve()
})
},
async submit(){
await this.checkForm()
console.log(1)
}
}
// 结果 先打印2,再打印1
2. Object.is 比较两个值是否相等
Object.is()
严格比较两个值是否相等,弥补== 和=== 的缺点
== 缺点
null == undefined //true
+0 == -0 //true
=== 缺点
+0 === -0 //true
NaN === NaN //false
Object.is 只要值一样,就相等
Object.is(+0,-0) // false
Object.is(NaN,NaN) // true
3. 数组深拷贝
法一:
let arr = [1,2,3,4,5,6,7];
let tmp = JSON.parse(JSON.stringify(arr));
法二:
let arr = [1,2,3,4,5,6,7];
let tmp = arr.slice(0);
这样就能得到一个新的数组,而且即便修改数据b的值,
也不会对数据 arr 有任何影响
4. 数据刷新后, 滚动到页面顶部
if (document.body.scrollTop) {
document.body.scrollTop = 0
} else {
document.documentElement.scrollTop = 0
}
5. 循环对比数组数据,有这个值就直接返回 ture
let name = "aa";
let flag = Array.some(item=>{
return item.name ===name
})
如果数组中有这个值就返回 true ,没有就返回 false
网友评论