jQuery.map( array, callback )返回值: 数组
描述: 将数组或对象中的所有项转换为新的项数组。
-
添加版本: 1.0jQuery.map( array, callback )
-
array类型: 类数组对象要转换的数组或类数组对象。
-
callback用于处理每个项目的函数。该函数的第一个参数是数组项,第二个参数是数组中的索引。该函数可以返回任何值。返回的数组将被扁平化为结果数组。在函数中,
this
指向全局(窗口)对象。
-
-
添加版本: 1.6jQuery.map( object, callback )
-
object类型: 对象要转换的非类数组对象。
-
callback用于处理每个项目的函数。该函数的第一个参数是值;第二个参数是对象属性的键。该函数可以返回任何值以添加到数组中。返回的数组将被扁平化为结果数组。在函数中,
this
指向全局(窗口)对象。
-
如果你想处理一个 jQuery 对象——例如,$('div').map( callback );
——请使用 .map() 代替。
$.map()
方法将函数应用于数组或对象中的每个项目,并将结果映射到一个新的数组中。在 jQuery 1.6 之前,$.map()
仅支持遍历数组和类数组对象。从 jQuery 1.6 开始,它还遍历对象。
类数组对象——那些具有 .length
属性并且在 .length - 1
索引上具有值的——可以传递给 $.map()
。
1
2
3
4
5
6
7
|
|
此方法提供的翻译函数会针对数组或对象中的每个顶级元素调用,并传递两个参数:元素的值以及它在数组或对象中的索引或键。
该函数可以返回
- 翻译后的值,它将映射到结果数组
-
null
或undefined
,以删除该项 - 一个值数组,它将被扁平化为完整数组
示例
使用 $.map() 更改数组的值。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
|
演示
将原始数组映射到一个新的数组,并为每个值添加 4。
1
2
3
|
|
结果
1
|
|
将原始数组映射到一个新的数组,如果值大于零,则为每个值添加 1,否则将其删除。
1
2
3
|
|
结果
1
|
|
将原始数组映射到一个新的数组;每个元素都添加了其原始值和值加一。
1
2
3
|
|
结果
1
|
|
将原始对象映射到一个新的数组,并将每个值加倍。
1
2
3
4
|
|
结果
1
|
|
将对象的键映射到一个数组。
1
2
3
4
|
|
结果
1
|
|
将原始数组映射到一个新的数组;每个元素都平方。
1
2
3
|
|
结果
1
|
|
将原始数组映射到一个新的数组,通过返回 null
删除小于 50 的数字,并从其余数字中减去 45。
1
2
3
|
|
结果
1
|
|
通过在函数中返回一个数组来扩展结果数组。
1
2
3
4
|
|
结果
1
|
|