jQuery.map( array, callback )返回值: Array
描述: 将数组或对象中的所有项转换为新数组中的项。
-
版本添加: 1.0jQuery.map( array, callback )
-
array类型: ArrayLikeObject要转换的数组或类数组对象。
-
callback用于处理每个项的函数。该函数接受两个参数:数组项和数组中的索引。函数可以返回任何值。返回的数组将被展平到结果数组中。在函数内部,
this指向全局 (window) 对象。
-
-
版本添加: 1.6jQuery.map( object, callback )
-
object类型: Object要转换的非类数组对象。
-
callback用于处理每个项的函数。该函数接受两个参数:属性值和对象属性的键。函数可以返回任何值以添加到数组中。返回的数组将被展平到结果数组中。在函数内部,
this指向全局 (window) 对象。
-
如果您想处理一个 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,以移除该项 - 值的数组,它将被展平到整个数组中
示例
示例 1
使用 $.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
|
|
演示
示例 2
将原始数组映射到一个新数组,并将每个值加 4。
|
1
2
3
|
|
结果
|
1
|
|
示例 3
将原始数组映射到一个新数组,如果值大于零则加 1,否则移除该项。
|
1
2
3
|
|
结果
|
1
|
|
示例 4
将原始数组映射到一个新数组;每个元素都添加其原始值以及该值加一。
|
1
2
3
|
|
结果
|
1
|
|
示例 5
将原始对象映射到一个新数组,并将每个值翻倍。
|
1
2
3
4
|
|
结果
|
1
|
|
示例 6
将对象的键映射到一个数组。
|
1
2
3
4
|
|
结果
|
1
|
|
示例 7
将原始数组映射到一个新数组;每个元素都进行平方。
|
1
2
3
|
|
结果
|
1
|
|
示例 8
将原始数组映射到一个新数组,通过返回 null 来移除小于 50 的数字,并将其余数字减去 45。
|
1
2
3
|
|
结果
|
1
|
|
示例 9
通过在函数中返回一个数组来扩充结果数组。
|
1
2
3
4
|
|
结果
|
1
|
|