[1] == [1] 和 [1] === [1] 是 ture 还是 false
都是 false,因为 [1] 是引用类型,两个地址不一样无法,故都为 false
slice() 和 splice() 区别?
- slice 不会改变原数组
- splice 会改变原数组对象
- 其实就是 截取 和 替换 的区别
浅拷贝与深拷贝?
浅拷贝:B复制A,B发生变化,A也发生变化
深拷贝:B复制A,B发生变化,A不变
用 Promiser 如何处理多个异步请求?
使用 Promise.all()
/*生成promise对象*/
function getExif(file) => {
let _this = this
const promise = new Promise((resolve) => {
EXIF.getData(file, function() {
var allMetaData = EXIF.getAllTags(this);
let name = file.name.split('.')[0];
let exifPic = {}
exifPic[name] = allMetaData
resolve(exifPic)
})
})
return promise
}
// 构建promise对象数组
let result = [];
for(let i =0; i < files.length; i++) {
result.push(getExif(files[i]))
}
// 利用promise.all()解决异步问题
Promise.all(result).then((res) => {
console.log(res)
})
网友评论