在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 相关文章推荐
php跨域调用json的例子
Nov 13 Javascript
调用innerHTML之后onclick失效问题的解决方法
Jan 28 Javascript
一个判断抢购时间是否到达的简单的js函数
Jun 23 Javascript
jQuery中closest和parents的区别分析
May 07 Javascript
实现JavaScript高性能的数据存储
Dec 11 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
Jul 02 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
Sep 10 Javascript
详解使用webpack打包编写一个vue-toast插件
Nov 08 Javascript
Angular实现点击按钮控制隐藏和显示功能示例
Dec 29 Javascript
微信小程序模板消息推送的两种实现方式
Aug 27 Javascript
Vue.js的模板语法详解
Feb 16 Javascript
浅谈vue 多个变量同时赋相同值互相影响
Aug 05 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(4) php 函数 补充2
2010/02/15 PHP
基于php常用正则表达式的整理汇总
2013/06/08 PHP
WordPress中用于获取文章作者与分类信息的方法整理
2015/12/17 PHP
thinkphp中字符截取函数msubstr()用法分析
2016/01/09 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
2016/11/05 PHP
Swoole源码中如何查询Websocket的连接问题详解
2020/08/30 PHP
Jquery ajaxsubmit上传图片实现代码
2010/11/04 Javascript
jQuery事件 delegate()使用方法介绍
2012/10/30 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
javascript单页面手势滑屏切换原理详解
2016/03/21 Javascript
js接收并转化Java中的数组对象的方法
2016/08/11 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
2016/12/01 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
小程序云开发之用户注册登录
2019/05/18 Javascript
如何进行微信公众号开发的本地调试的方法
2019/06/16 Javascript
js实现简单的打印表格
2020/01/15 Javascript
vue使用swiper实现左右滑动切换图片
2020/10/16 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
基于jQuery拖拽事件的封装
2020/11/29 jQuery
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
[02:16]DOTA2英雄基础教程 干扰者
2014/01/15 DOTA
python在控制台输出进度条的方法
2015/06/20 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
django 多数据库配置教程
2018/05/30 Python
django实现类似触发器的功能
2019/11/15 Python
linux面试题参考答案(8)
2015/08/11 面试题
洗煤厂厂长岗位职责
2014/01/03 职场文书
学习优秀共产党员先进事迹思想报告
2014/09/17 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
2014小学数学教师个人工作总结
2014/12/18 职场文书
Redis集群新增、删除节点以及动态增加内存的方法
2021/09/04 Redis
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript
MySQL解决Navicat设置默认字符串时的报错问题
2022/06/16 MySQL