Array.map()
定義: 對數組的每個元素調用定義的回調函數并返回包含結果的數組
調用方式:
1.Array.map(callback(element,index,array){})
2.Array.map(callback)
function callback(element,index,array){}
參數:
element:數組當前被調用的元素
index:數組當前被調用元素的索引
array:當前被調用元素的數組(數組本身)
實例:
//實例一:求圓面積
//定義3個圓的半徑
var circle = [7,8,9];
circle.map((element) => { return Math.PI * element * element });
//circle = [Math.PI * 7 * 7,Math.PI * 8 * 8,Math.PI * 9 * 9]
//實例二:求數組內元素%10后的結果
var array = [11,22,33,44,55];
array.map((element) => { return element % 10 });
//array = [1,2,3,4,5]
//實例三:求平方根
var array = [16,25,36];
array.map(Math.sqrt);
//array = [4,5,6]
Array.filter()
定義:filter把傳入的函數依次作用于每個元素,然后根據返回值是True or False決定保留還是舍棄該元素,并返回新的數組。
調用方式:
1.Array.filter(callback(element,index,array){})
2.Array.filter(callback)
function callback(element,index,array){}
參數:
element:數組當前被調用的元素
index:數組當前被調用元素的索引
array:當前被調用元素的數組(數組本身)
實例:
//實例一:獲取一個數組的偶數
var array = [2,5,6,9,4,7];
array.filter( (element) => { return element % 2 == 0});
//array = [2,6,4]
//實例二:去除Array的重復元素
var array = ["li","wang","xie","zhang","wang","li"];
array.filter( (element,index,array) => { return array.indexOf(element) === index});
//array = ["li","wang","xie","zhang"]
indexOf()返回數組下標0開始的第一個元素的位置。