先举个常见的栗子:

var arr = [1,2,3,4,6,7,8,9,12,3,25,63,100]

var arr2 = arr.map(item => item += 1)

console.log(arr)   // 原数组

console.log(arr2) // 返回一个每项加1的新数组

用ES5实现如下:

const myMap = function(fn, context){
let arr = Array.prototype.slice.call(this)
let mapArr = []
for(let i = 0 ; i<arr.length ; i++ ){
if(!arr.hasOwnProperty(i)) continue
mapArr.push(fn.call(context,arr[i],i,this))
}
return mapArr
} Array.prototype.myMap = myMap var arr = [1,2,3,4,5] var arr2 = arr.myMap(item=>item += 1) console.log(arr) // [1,2,3,4,5]
console.log(arr2) // [2,3,4,5,6]

最新文章

  1. httpd服务访问控制
  2. 在Winform开发框架中实现对数据库的加密支持
  3. memcpy与memmove区别
  4. Coppersmith-Winograd 算法
  5. CSS before和after伪元素
  6. c++11 auto
  7. C#控件TabControl隐藏page
  8. 令人作呕的OpenSSL
  9. Xcode调试之查看变量
  10. MVC 包命名规范
  11. 以正确的姿势实现一棵JavaScript菜单树
  12. Spring Boot使用过滤器和拦截器分别实现REST接口简易安全认证
  13. 065 updateStateByKey的函数API
  14. mysql短日期 长时间转换为短日期
  15. delphi控制本计算机和远程计算机关机等
  16. spring配置多视图解析器
  17. N的阶乘末尾有多少个0
  18. Linux下的文件与目录权限
  19. 如何将thick provision lazy zeroed的VMDK文件转换为thick provision eager zeroed?
  20. 【angular5项目积累总结】http请求服务封装

热门文章

  1. 新浪微博API错误代码说明对照表 http://open.weibo.com/wiki/Error_code
  2. Uniapp使用iconfont
  3. 解析P2P金融的业务安全
  4. BERT大火却不懂Transformer?读这一篇就够了
  5. HTML 标签:常规元素和空元素
  6. [转]分布式监控工具Ganglia 介绍 与 集群部署.
  7. http请求头包括了哪些常见内容
  8. VMware虚拟机安装Windows2003操作教程
  9. MySQL Workbench: mysqldump version mismatch
  10. 深度解读 - TDD(测试驱动开发)