ES5新增陣列的常見方法

weixin_51536723發表於2020-10-21

1、indexof

方法可返回陣列中某個指定的元素位置,索引位置從0開始,如果在陣列中沒找到指定元素則返回 -1。
例: 從陣列 arr = [“a”,“b”,“c”,“d”,“e”];找出a的位置 .

 var arr = ["a","b","c","d","e"];
    arr.indexOf("a");        //0
    arr.indexOf("g");

2、forEach

方法用於呼叫陣列的每個元素,並將元素傳遞給回撥函式。沒有任何返回值.
例:遍歷陣列 arr =[“a”,“b”,255,512,“hello”]

        var arr = ["a","b",255,512,"hello"];

		var a = arr.forEach(function(value,index){
			 console.log(value);
			 console.log(index);
		})
		console.log(a);

3、map

map() 方法返回一個新陣列,陣列中的元素為原始陣列元素呼叫函式處理後的值
注意: map() 不會對空陣列進行檢測,map() 不會改變原始陣列
例:將arr2 = [4,5,6,7,8]乘以1.3後返回

		var arr2 = [4,5,6,7,8]
		var b = arr2.map(function(value,index){
//			console.log(value)
//			console.log(index)
			return value+value*0.3;
		})
		console.log(arr2)
		console.log(b)

4、filter

filter() 方法建立一個新的陣列,是將函式執行一遍,只有在布林值為true的時候才會返回該資料
例1: 返回 arr2 = [4,5,6,7,8]大於5的資料

	var c = arr2.filter(function(value,index){
			console.log(value)
			console.log(index)
			return value <= 5
		})
		console.log( c )
	例2:  把一個Array中的空字串刪掉,可以這麼寫:	
var arr = ['A', '', 'B', null, undefined, 'C', '  '];

var r = arr.filter(function (s) {
    return s && s.trim(); // 注意:IE9以下的版本沒有trim()方法

});

   console.log(r);

相關文章