您的位置:首页 > 职场人生

map的整理——面试问题

2015-12-11 18:21 288 查看
面试时候遇到遇到一道面试题:
[1,2,3,4].map(parseInt);


map是对数组中每个元素执行相同的回调函数,但不修改原数组,而是返回新数组。

现在总结一下有关map的实现原理:

// 以下是它的实现原理。

if (!Array.prototype.map)
{
Array.prototype.map = function(fun /*, thisp*/)
{
var len = this.length;

if (typeof fun != "function")
throw new TypeError();

var res = new Array(len);
var thisp = arguments[1];

for (var i = 0; i < len; i++)
{
if (i in this)
res[i] = fun.call(thisp, this[i], i, this);
}
return res;
};
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: