例
返回与原来的阵列中的所有的值的平方根的数组:
var numbers = [4, 9, 16, 25];
function myFunction() {
x = document.getElementById("demo")
x.innerHTML =
numbers.map(Math.sqrt);
}
其结果将是:
2,3,4,5
试一试» 更多"Try it Yourself"下面的例子。
定义和用法
的map()方法创建要求每个数组元素的函数的结果的新的数组。
的map()方法用于在阵列中的每个元素调用提供的函数一次,为了。
注意: map()没有值不执行该功能的数组元素。
注: map()不改变原始数组。
浏览器支持
在表中的数字规定,完全支持方法的第一个浏览器版本。
方法 | |||||
---|---|---|---|---|---|
map() | 是 | 9 | 1.5 | 是 | 是 |
句法
参数值 参数 描述 function(currentValue, index,arr) 需要。 的函数,为所述阵列中的每个元素中运行。
功能参数: 论据 描述 currentValue 需要。 当前元素的值 index 可选的。 当前元素的数组索引 arr 可选的。 阵列对象中的当前元素所属
thisValue 可选的。 的值被传递给函数被用作它的"this"的值。
如果这个参数是空的,值"undefined"将其传递"this"值
技术细节
返回值: 含有要求的原始阵列中的每个元件所提供的函数的结果的数组。 JavaScript的版本: 1.6
更多示例
例
乘以与特定数量的阵列中的所有的值:
var numbers = [65, 44, 12, 4];
function
multiplyArrayElement(num) {
return num *
document.getElementById("multiplyWith").value;
}
function
myFunction() {
document.getElementById("demo").innerHTML =
numbers.map(multiplyArrayElement);
} 试一试» 例
每个人在数组中获得全名:
var persons = [
{firstname : "Malcom", lastname:
"Reynolds"},
{firstname : "Kaylee", lastname: "Frye"},
{firstname : "Jayne", lastname: "Cobb"}
];
function
getFullName(item,index) {
var fullname =
[item.firstname,item.lastname].join(" ");
return
fullname;
}
function myFunction() {
document.getElementById("demo").innerHTML = persons.map(getFullName);
} 试一试»
<JavaScript的阵列参考