我是靠谱客的博主 悲凉期待,最近开发中收集的这篇文章主要介绍map方法学习,封装函数--实现Array.prototype.map()的功能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

封装函数–实现Array.prototype.map()的功能

Array.prototype.map( )这个方法是很有使用价值的,可以省下循环的步骤,处理数组中的每个元素,同时返回一个新的数组。我使用闭包封装了一个方法来实现类似的功能。


Array.prototype.map()方法

  • 首先看一下Array.prototype.map()方法
  • map() 方法创建一个新数组,其结果是该数组中的每个元素调用一个提供的函数。
  • map 方法会给原数组中的每个元素都按顺序调用一次 callback 函数。callback 每次执行后的返回值(包括 undefined)组合起来形成一个新数组。

//map方法
var data = [10, 20, 30, 40];
var roots = data.map(function (ele) {
return ele / 10;
});
console.log(roots);//[1,2,3,4]
console.log(data);//[10, 20, 30, 40]

封装函数实现Array.prototype.map()方法

下面是实现map方法的函数封装。
暂时只是实现了基础功能,具体还有很多优化可以做。


function myMap(data, fn) {
var arg = [];
for (var i = 0; i < data.length; i++) {
(function (ele, fn) {
//每一个元素处理后放入新数组
arg.push(fn(ele));
})(data[i], fn);
}
return arg;
}
var data = [10, 20, 30, 40];
var roots= myMap(data, function (ele) {
return ele / 10;
});
console.log(roots);//[1,2,3,4]

最后

以上就是悲凉期待为你收集整理的map方法学习,封装函数--实现Array.prototype.map()的功能的全部内容,希望文章能够帮你解决map方法学习,封装函数--实现Array.prototype.map()的功能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部