string(必选)若是接受的是‘abc’,纯字符串,返回NaN,要是‘123’会转化为123,要是‘abc123’会转化为123,radius(可选)表示的是基数,指定前面的string是一个几进制的数(不是将string转化为多少进制,而是这个string自己是一个多少进制的数),string()方法才是把一个10进制的数转化成多少进制。radius的范围是2-36,若是radius为零,系统默认解析为10,其余系统输出NaN.
var arr=[1,2,3,4,5];数组
var b=arr.map(parseInt); console.log(b); console.log(parseInt(1,0)); //1 console.log(parseInt('2',1)); //NaN console.log(parseInt('3',2)); //本身自己大于基数,应该都小于2才合理 console.log(parseInt(4,3)); console.log(parseInt(5,4)); console.log(parseInt(11,10));
var arr=[1,2,3,4,5];函数
var new_arr=arr.map(function(value,index,arr){ return value*index; }); console.log(new_arr);
//IE6-8 if(typeof Array.prototype.map!="function"){ Array.prototype.map=function(fn,context){ var arr=[]; if(typeof fn==="function"){ for (var i = 0; i < this.length; i++) { arr.push(fn.call(contxt,this[i],i,this)); } } return arr; } }
回调函数带四个参数初始值|最终值、元素值、索引号、数组自己。
比map的函数多一个参数total(初始值,最终值),由于reduce方法数组每次输入两个元素。
var a=[1,2,3,4].reduce(function(total,value,index,arr){this
return total+value;
})
console.log(a); //10
var a=[1,2,3,4].reduce(function(total,value,index,arr){prototype
return total+value;
},100);
console.log(a); //110code