jQuery.map()方法


实例

使用$.map() 修改一个数组的值

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
    var arr = [ "a", "b", "c", "d", "e" ];
    $("div").text(arr.join(", "));
    arr = $.map(arr, function(n, i){
        return (n.toUpperCase() + i);
    });
    $("p").text(arr.join(", "));
    arr = $.map(arr, function (a) {
        return a + a;
    });
    $("span").text(arr.join(", "));
})
</script>
运行一下 »

定义和用法

$.map() 函数用于使用指定函数处理数组中的每个元素(或对象的每个属性),并将处理结果封装为新的数组返回。

注意:1. 在jQuery 1.6 之前,该函数只支持遍历数组;从 1.6 开始,该函数也支持遍历对象。
2. map()还会为函数传入两个参数:其一是当前迭代的元素或属性值,其二是当前迭代项的数组索引或对象属性名。
3. 该函数返回值将作为结果数组中的一个元素,如果返回值为null或undefined,则不会被添加到结果数组中。

语法

$.map( object, callback )

参数 描述
object Array/Object类型 指定的需要处理的数组或对象。
callback Function类型 指定的处理函数。

更多实例

原数组中的每个值加 4
将原始数组中的每个值加 4 后,映射到新的数组中。

原数组中大于 0 的数值加 1
将原数组中大于 0 的数值加 1 后映射到新的数组中。

原数组的值加 1
将原数组中的每个值及该值加 1 后的结果映射到新生成的数组。

原数组的值乘以 2
将原对象中的每个值乘 2 后,映射到新生成的数组中。

对象中的键
将对象中的键映射到新生成的数组中。

原数组的值的平方
将原始数组中每个值的两次方作为返回结果,映射到新生成的数组中。

移除元素
通过在处理函数中返回 null 的方式来移除该元素,移除小于 50的值,同时将未被移除的元素值减小 45。

添加元素
通过在处理函数中返回数组的方式,在最终返回的结果数组中添加元素。