在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 相关文章推荐
javascript 操作Word和Excel的实现代码
Oct 26 Javascript
javascript比较两个日期的先后示例代码
Dec 31 Javascript
JS实现当前页居中分页效果的方法
Jun 18 Javascript
js去字符串前后空格的实现方法
Feb 26 Javascript
javascript完美实现给定日期返回上月日期的方法
Jun 15 Javascript
jQuery实现简单的Ajax调用功能示例
Feb 15 jQuery
vue 列表页跳转详情页获取id以及详情页通过id获取数据
Mar 27 Javascript
JS正则表达式封装与使用操作示例
May 15 Javascript
vue实现搜索功能
May 28 Javascript
vue中使用element组件时事件想要传递其他参数的问题
Sep 18 Javascript
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
解决Antd Table组件表头不对齐的问题
Oct 27 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长字符串定义方法
2012/07/12 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
2014/08/21 PHP
ThinkPHP表单自动验证实例
2014/10/13 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
Windows7下的php环境配置教程
2015/02/28 PHP
thinkphp中的多表关联查询的实例详解
2017/10/12 PHP
详解如何实现Laravel的服务容器的方法示例
2019/04/15 PHP
列表内容的选择
2006/06/30 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
JavaScript访问样式表代码
2010/10/15 Javascript
Jquery下attr和removeAttr的使用方法
2010/12/28 Javascript
jQuery实战之仿淘宝商城左侧导航效果
2011/04/12 Javascript
js中取得变量绝对值的方法
2015/01/03 Javascript
JavaScript中调用函数的4种方式代码实例
2015/07/08 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记6)
2015/12/20 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
详解Bootstrap的iCheck插件checkbox和radio
2016/08/24 Javascript
JS实现拖拽的方法分析
2016/12/20 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
2017/05/19 jQuery
在微信小程序中保存网络图片
2019/02/12 Javascript
微信小程序实现渐入渐出动画效果
2019/06/13 Javascript
JavaScript 闭包的使用场景
2020/09/17 Javascript
[39:46]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第二场 11.25
2020/11/25 DOTA
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Scrapy-redis爬虫分布式爬取的分析和实现
2017/02/07 Python
基于pip install django失败时的解决方法
2018/06/12 Python
Windows下python3.7安装教程
2018/07/31 Python
python Tcp协议发送和接收信息的例子
2019/07/22 Python
用canvas显示验证码的实现
2020/04/10 HTML / CSS
Agoda香港:全球特价酒店预订
2017/05/07 全球购物
微软日本官方网站:Microsoft日本
2017/11/26 全球购物
毕业晚会主持词
2014/03/24 职场文书
优秀家长自荐材料
2014/08/26 职场文书
小学英语新课改心得体会
2016/01/22 职场文书
基于PyQt5制作一个群发邮件工具
2022/04/08 Python