例
返回與原來的陣列中的所有的值的平方根的數組:
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的陣列參考