javascript数组map实现方法
类型推断常用方法
- typeof 如果用来检测数组 返回 object 不适用检查数组
- instanceof 判断一个对象是否为某一数据类型,或一个变量是否为一个对象的实例
- constructor 返回构造器方法 只能检查已经声明的变量
for in 和 for of 的区别
- for in更适合遍历对象,不要使用for in遍历数组。
- for of适用遍历数/数组对象/字符串/map/set等拥有迭代器对象的集合.但是不能遍历对象
var myMapFun = (arr,fn)=>{
if(!arr instanceof Array){
return;
}
var result = [];
for(const val of arr){
result.push(fn(val))
}
return result;
}
var t = myMapFun([1,2,3,4],(x)=>{return x*2});
console.log(t)//[2,4,6,8]
Array.prototype.myMapFun = function(fn){
if(this instanceof Array){
var result = [];
for(const val of this){
result.push(fn(val))
}
return result;
}
}
var arr = [1,2,3,4];
arr.myMapFun((i)=>{return i*i})