在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 相关文章推荐
nicejforms——美化表单不用愁
Feb 20 Javascript
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
Mar 07 Javascript
Jquery实现无刷新DropDownList联动实现代码
Mar 08 Javascript
JavaScript使用cookie实现记住账号密码功能
Apr 27 Javascript
js漂浮广告实现代码
Aug 15 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
Jun 22 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
Jul 01 Javascript
vue如何通过id从列表页跳转到对应的详情页
May 01 Javascript
layui实现三级联动效果
Jul 26 Javascript
详解如何解决使用JSON.stringify时遇到的循环引用问题
Mar 23 Javascript
javascript对象3个属性特征
Nov 17 Javascript
解决vue-router的beforeRouteUpdate不能触发
Apr 14 Vue.js
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简单读取PDF页数的实现方法
2016/07/21 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
laravel 实现用户登录注销并限制功能
2019/10/24 PHP
通过PHP实现用户注册后邮箱验证激活
2020/11/10 PHP
JavaScript Konami Code 实现代码
2009/07/29 Javascript
jQuery 学习第六课 实现一个Ajax的TreeView
2010/05/17 Javascript
基于Jquery的温度计动画效果
2010/06/18 Javascript
javascript回车完美实现tab切换功能
2014/03/13 Javascript
js函数与php函数的区别实例浅析
2015/01/12 Javascript
js实现新浪微博首页效果
2015/10/16 Javascript
Google 地图获取API Key详细教程
2016/08/06 Javascript
深入理解js generator数据类型
2016/08/16 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
javascript 产生随机数的几种方法总结
2017/09/26 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
2018/01/16 Javascript
iview table render集成switch开关的实例
2018/03/14 Javascript
layui radio性别单选框赋值方法
2018/08/15 Javascript
layui字体图标 loading图标静止不旋转的解决方法
2019/09/23 Javascript
微信域名检测接口调用演示步骤(含PHP、Python)
2019/12/08 Javascript
JavaScript 链表定义与使用方法示例
2020/04/28 Javascript
vue 实现锚点功能操作
2020/08/10 Javascript
对python列表里的字典元素去重方法详解
2019/01/21 Python
Python File(文件) 方法整理
2019/02/18 Python
python 缺失值处理的方法(Imputation)
2019/07/02 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
基于Python批量生成指定尺寸缩略图代码实例
2019/11/20 Python
基于python实现检索标记敏感词并输出
2020/05/07 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
2020/07/03 Python
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
微软加拿大官方网站:Microsoft Canada
2019/04/28 全球购物
杭州联环马网络笔试题面试题
2013/08/04 面试题
中式结婚主持词
2014/03/14 职场文书
班级学习雷锋活动总结
2014/07/04 职场文书
财务工作失误检讨书
2015/02/19 职场文书
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
Pytorch DataLoader shuffle验证方式
2021/06/02 Python