之前并没有过多的使用过这个Api,在此记录下对其的理解,方便以后多多使用。

首先是对map的说明:

var mappedArray = array.map(callback[, thisObject]);

    callback: 要对每个数组元素执行的回调函数。
thisObject : 在执行回调函数时定义的this对象。

其可以为数组中的每一个元素执行一次回调函数,并将返回值存入一个新数组中。它只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略。map 不会改变原有数组,调函数可以有三个参数:当前元素,当前元素的索引和当前的数组对象。

例子:

//例子,arr为原始数组
var arr = [
{name: 'gonn', age: 20, sex: '1', No: '274200'},
{name: 'nowamagic', age: 30, sex: '0', No: '274011'},
{name: 'frie', age: 40, sex: '1', No: '274212'}
]; //使用map更改数组每项的值,可对数组每一项元素内部进行增删改,也可以通过return null来删除数组的某项
var arr2 = arr.map(function(item, i){
item.sex = item.sex == '0' ? '女' : '男';
if(item.name == 'tom'){
return null; //删除name为tom的项
}
return {
index: i,
name: item.name,
age: item.age + 30 + i,
sex: item.sex
};
});

数组Api .map()的使用的更多相关文章

  1. 兼容 数组 api map代码

    if(!("map" in Array.prototype)) Array.prototype.map=function(fun){ for(var i=0,arr=[]; i&l ...

  2. javascript_core_10之继承与数组API

    1.现有两对象间的继承:Object.setPrototypeOf(child,father): 2.基于现有父对象创建子对象:var child=Object.create(father,{新属性} ...

  3. 数组API(2)

    ES5中数组新增API: 1. indexOf 作用:检测当前数据是否在数组中存在: 特点:如果存在返回相对应的下标,如果不存在则返回-1: 如果数组中存在多个需要判断的这个数据,则返回最近的这个数据 ...

  4. 第9章 集合处理(数组、Map、Set)

    目录 1. 数组 1.1 创建数组 1.2 在数组两端添加删除元素 1.3 在数组任意位置添加.删除元素 delete删除数组元素无效 使用splice方法增.删.改元素 1.4 数组的常用操作 数组 ...

  5. Microsoft Win32 to Microsoft .NET Framework API Map

    Microsoft Win32 to Microsoft .NET Framework API Map .NET Development (General) Technical Articles   ...

  6. javascript_core_04之数组API

    1.数组API——splice: ①删除:var deletes=arr.splice(starti,n):删除starti位置开始的n个,返回删除元素组成的临时数组: ②插入:arr.splice( ...

  7. Go语言学习笔记(三)数组 & 切片 & map

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959 数组 Arrays 数组是同一种数据类型的固定长度的序列. 数组是值类型,因此改变副本的值,不会改变本身的值: 当 ...

  8. 数组Array、数组API

    1.数组:批量管理多个数据的存储空间. 数组的作用:现实中,批量管理多个数据都是集中分组存放,良好的数据结构,可极大提高程序的执行效率! 优点:方便查找 2.创建数组:(4种方式) (1)var 变量 ...

  9. JavaScript中对数组和数组API的认识

    JavaScript中对数组和数组API的认识 一.数组概念: 数组是JavaScript中的一类特殊的对象,用一对中括号“[]”表示,用来在单个的变量中存储多个值.在数组中,每个值都有一个对应的不重 ...

随机推荐

  1. mysql 表设计

  2. 前谷歌首席 Java 架构师谈如何设优秀的 API

    随着近来软件规模的日益庞大,API编程接口的设计变的越来越重要.良好的接口设计可以降低系统各部分之间的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合度,从而提高系统的维护性和稳定性. Joshu ...

  3. .\Obj\uCOSDemo.axf: Error: L6218E: Undefined symbol LCD_Fast_DrawPoint (refe

    这个问题是 没有定义此函数 解决方法是 定义并声明一下 这个函数!!!

  4. 没有找到 mspdb100.dll 的解决办法

    直接从Common7\IDE\下复制这个文件到VC\Bin\下即可解决.(D:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE)

  5. python实现应用程序在右键菜单中添加打开方式

    最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写 1.需求拆解: 如何实现手动添加右键菜单的打开方式: Step1:打开注册表编辑器,Win+R-> ...

  6. 洛谷 P1040 加分二叉树

    题目描述 设一个n个节点的二叉树tree的中序遍历为(1,2,3,…,n),其中数字1,2,3,…,n为节点编号.每个节点都有一个分数(均为正整数),记第i个节点的分数为di,tree及它的每个子树都 ...

  7. 【Android - MD】之FloatingActionButton的使用

    FloatingActionButton(FAB) 是 Android 5.0 新特性--Material Design 中的一个控件,是一种悬浮的按钮. FloatingActionButton 是 ...

  8. 【原创】javascript——事件思维导图

  9. 把数据库中表的内容转存为XML文件

    把数据库中表的内容转存为XML字符串()              ::::) " Code" IsThirdStock" CreateUser::" Code ...

  10. soapUI的使用

    首先下载soapUI下载地址在网上能够搜的到  windows下载这个soapUI-x32-3_5.exe(中间的数字是版本,能够下载最新的,这个已经有了JMS的測试功能)  首先得有一个webser ...