javascript數(shù)組map實(shí)現(xiàn)方法
類型推斷常用方法
- typeof 如果用來檢測數(shù)組 返回 object 不適用檢查數(shù)組
- instanceof 判斷一個(gè)對象是否為某一數(shù)據(jù)類型,或一個(gè)變量是否為一個(gè)對象的實(shí)例
- constructor 返回構(gòu)造器方法 只能檢查已經(jīng)聲明的變量
for in 和 for of 的區(qū)別
- for in更適合遍歷對象,不要使用for in遍歷數(shù)組。
- for of適用遍歷數(shù)/數(shù)組對象/字符串/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})