在JavaScript中操作数组之map()方法的使用


Posted in Javascript onJune 09, 2015

 JavaScript 数组map()方法创建一个新的数组使用调用此数组中的每个元素上所提供的函数的结果。
语法

array.map(callback[, thisObject]);

下面是参数的详细信息:

  •     callback : 从当前的元素函数产生新的数组的元素。
  •     thisObject : 对象作为该执行回调时使用

返回值:

返回创建数组
兼容性:

这种方法是一个JavaScript扩展到ECMA-262标准;因此它可能不存在在标准的其他实现。为了使它工作,你需要添加下面的脚本代码在顶部:

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;
 };
}

例子:

<html>
<head>
<title>JavaScript Array map Method</title>
</head>
<body>
<script type="text/javascript">
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;
 };
}

var numbers = [1, 4, 9];
var roots = numbers.map(Math.sqrt);

document.write("roots is : " + roots ); 

</script>
</body>
</html>

这将产生以下结果:

roots is : 1,2,3
Javascript 相关文章推荐
(JS实现)MapBar中坐标的加密和解密的脚本
May 16 Javascript
用方法封装javascript的new操作符(一)
Dec 25 Javascript
JavaScript 类型的包装对象(Typed Wrappers)
Oct 27 Javascript
js本地图片预览实现代码
Oct 09 Javascript
原生js实现可爱糖果数字时间特效
Dec 30 Javascript
微信小程序 在线支付功能的实现
Mar 14 Javascript
微信小程序page的生命周期和音频播放及监听实例详解
Apr 07 Javascript
vue下history模式刷新后404错误解决方法
Aug 18 Javascript
JS浮点数运算结果不精确的Bug解决
Aug 01 Javascript
详解element上传组件before-remove钩子问题解决
Apr 08 Javascript
Vue Render函数原理及代码实例解析
Jul 30 Javascript
适合后台管理系统开发的12个前端框架(小结)
Jun 29 Javascript
JavaScript中join()方法的使用简介
Jun 09 #Javascript
Jquery日期选择datepicker插件用法实例分析
Jun 08 #Javascript
Jquery实现遮罩层的方法
Jun 08 #Javascript
js正则匹配出所有图片及图片地址src的方法
Jun 08 #Javascript
Js数组排序函数sort()介绍
Jun 08 #Javascript
元素绑定click点击事件方法
Jun 08 #Javascript
JavaScript获取URL汇总
Jun 08 #Javascript
You might like
php pack与unpack 摸板字符字符含义
2009/10/29 PHP
smarty模板引擎中自定义函数的方法
2015/01/22 PHP
php实现中文字符截取防乱码方法汇总
2015/04/29 PHP
PHP安全下载文件的方法
2016/04/07 PHP
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
jQuery学习笔记之jQuery动画效果
2013/09/09 Javascript
node.js中的fs.readdirSync方法使用说明
2014/12/17 Javascript
浅谈关于JavaScript API设计的一些建议和准则
2015/06/24 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
2015/09/12 Javascript
jQuery拖动布局其结果保存到数据库
2015/10/09 Javascript
js密码强度检测
2016/01/07 Javascript
多种JQuery循环滚动文字图片效果代码
2020/06/23 Javascript
微信小程序 视图容器组件的详解及实例代码
2017/01/19 Javascript
JavaScript实现各种排序的代码详解
2017/08/28 Javascript
angularjs实现的购物金额计算工具示例
2018/05/08 Javascript
jquery实现动态创建form并提交的方法示例
2019/05/27 jQuery
vue自定义指令实现仅支持输入数字和浮点型的示例
2019/10/30 Javascript
JavaScript实现京东放大镜效果
2019/12/03 Javascript
vscode 使用Prettier插件格式化配置使用代码详解
2020/08/10 Javascript
[52:37]完美世界DOTA2联赛循环赛 Forest vs DM BO2第一场 10.29
2020/10/29 DOTA
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
关于Python字符串显示u...的解决方式
2020/03/06 Python
HTML5实现WebSocket协议原理浅析
2014/07/07 HTML / CSS
李宁官方网店:中国运动品牌
2017/11/02 全球购物
尼克松手表官网:Nixon手表
2019/03/17 全球购物
打架检讨书300字
2014/02/02 职场文书
企业员工培训感言
2014/02/26 职场文书
博士生导师推荐信
2014/07/08 职场文书
运动会演讲稿50字
2014/08/25 职场文书
师德师风个人自我剖析材料
2014/09/27 职场文书
单位作风建设自查报告
2014/10/23 职场文书
2014年节能减排工作总结
2014/12/06 职场文书
整改通知书
2015/04/20 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
go使用Gin框架利用阿里云实现短信验证码功能
2021/08/04 Golang