JS中数组Array方法
2016-08-31 16:25
323 查看
概述
map()方法返回一个由原数组中的每个元素调用一个指定的方法后的返回值组成的新数组。语法
array.map(callback[, thisArg])
参数
callback原数组中的元素经过该方法后返回一个新的元素。
currentValue callback的第一个参数,数组中当前被传递的元素。 index callback的第二个参数,数组中当前被传递的元素的索引。 array callback的第三个参数,调用map方法的数组。
thisArg
执行callback函数时this指向的对象。
描述
map 方法会给原数组中的每个元素都按顺序调用一次 callback 函数。callback 每次执行后的返回值组合起来形成一个新数组。callback 函数只会在有值的索引上被调用;那些从来没被赋过值或者使用 delete 删除的索引则不会被调用。callback 函数会被自动传入三个参数:数组元素,元素索引,原数组本身。
如果 thisArg 参数有值,则每次 callback 函数被调用的时候,this 都会指向 thisArg 参数上的这个对象。如果省略了 thisArg 参数,或者赋值为 null 或 undefined,则 this 指向全局对象 。
map 不修改调用它的原数组本身(当然可以在 callback 执行时改变原数组)。
用法
用法一:["1", "2", "3"].map(parseInt); /** * 你可能觉的会是[1, 2, 3] * 但实际的结果是 [1, NaN, NaN] * 使用parseInt时,只需要传递一个参数.而parseInt可以有两个参数.第二个参数是进制数. * map方法在调用callback函数时,会给它传递三个参数:当前正在遍历的元素, 元素索引, 原数组本身. * 第三个参数parseInt会忽视, 但第二个参数不会. * 也就是说,parseInt把传过来的索引值当成进制数来使用.从而返回了NaN. * 即:第一个参数正常使用,第二个当做进制数,第三个以及之后的会被忽视 */ //应该使用如下的用户函数returnInt function returnInt(element){ return parseInt(element,10); } ["1", "2", "3"].map(returnInt); // 返回[1,2,3]
用法二:
/** * 将data,data2两个数组组合成json的格式 */ var data = ["a","b","c","d","e","f","g","h","i","j"]; var data2 = [1,2,3,4,5,6,7,8,9,10]; //方法一:(一般项目中不会这么拼接) var array1 = data.map(function(item){ var name = "'name'"; return name+":'"+item+"',"; }); var array2 = data2.map(function(item){ var value = "'value'"; return value+":'"+item+"'"; }); var arr = new Array(); for(var i = 0;i<data.length;i++){ arr[i] = "{"+array1[i]+array2[i]+"}"; } var a = '['+arr+']'; document.write(a); //方法二:(建议使用这种) var aaa = data.map(function(item,index){ return { name : item, value : data2[index] } }); document.write(JSON.stringify(aaa));
相关文章推荐
- js数组Array sort方法使用深入分析
- js中数组Array的一些常用方法总结
- js Array 数组相关的方法
- js 原型扩展数组array循环each方法
- js循环数组各种方法array 汇总-基础
- js中的数组Array定义与sort方法讲解
- JS数组array元素的添加和删除方法代码实例
- js--引用类型Array--2.数组合并几种方法
- JS Array.slice 截取数组的实现方法
- [置顶] js中数组Array和字符串String的属性方法归纳总结
- js中数组Array的一些常用方法。
- js使用Array.prototype.sort()对数组对象排序的方法
- js中的数组Array定义与sort方法使用示例
- js清空array数组的方法
- js中array(数组)对象的splice方法的详解
- js中数组Array的一些常用方法总结
- JS 操作Array数组的方法及属性实例解析
- js使用Array.prototype.sort()对数组对象排序的方法
- JS数组方法汇总 array
- js删除Array数组中指定元素的两种方法