- 本文参加了由公众号@若川视野 发起的每周源码共读活动, 点击了解详情一起参与。
-
- 这是源码共读的第33期,链接:【若川视野 x 源码共读】第33期 | arrify 转数组 - 掘金 (juejin.cn)。
1.转换数组的场景 (类数组转化为数组) 如 arguments转换为数组 原生js获取的DOM集合是一个类数组对象,所以不能直接利用数组的方法(例如:forEach,map等),需要转换为数组后,才能用数组的方法。
2.常见转换数组的方法
Array.from(likeList)
Array.prototype.slice.call(likeList)
解构赋值 […likeList]
3.arrify源码
export default function arrify(value){
if(value===null||value===undefined){
return[];
}
if(Array.isArray(value)){
returnvalue;
}
if(typeofvalue==='string'){
return[value];
}
if(typeofvalue[Symbol.iterator]==='function'){
return[...value];
}
return[value];
}