1. 程式人生 > >ES6-陣列的新增特性-陣列物件方法

ES6-陣列的新增特性-陣列物件方法

陣列物件新增的方法

4.find()和findIndex()方法

(1)find() 返回陣列中第一個滿足條件的元素,引數是回撥函式

例子:

<script>
    //返回陣列中第一個滿足條件的元素
    let arrs = [0,3,45,32,5,60,-3,89];
    console.log(arrs);

    //第一種:從陣列中獲取第一個>5的元素
    let res = arrs.find(function(val){
        if (val > 5) {
            return true;//只要>5結束迴圈,只要碰到>5的結束查詢
        }
        return false;
    });
    console.log(res);//輸出45

    //第二種:
    let res2 = arrs.find(function(val){
        return val>5;//比較表示式,返回布林值
    });
    console.log(res2);//輸出45

    //第三種:箭頭函式
    let res3 = arrs.find(val=>val>5);//比較表示式,返回布林值
    console.log(res3);//輸出45
</script>

(2) findIndex()返回陣列中第一個滿足條件的元素的索引,引數是回撥函式

例子:

<script>

    //findIndex()獲取陣列中第一個奇數元素的索引
    //第一種:傳統函式
    let res4 = arrs.findIndex(function(val){
        return (val%2) !== 0;//輸出2,第3個引數
    })
    console.log(res4);

    //第三種:箭頭函式
    let res5 = arrs.findIndex(val=>(val%2) !== 0);//比較表示式,返回布林值
        
    console.log(res5);//輸出索引為2,即指45
</script>

5.entries(),keys()和values()方法

遍歷陣列

(1)entries(),遍歷陣列中的key和value,for...of方法;

(2)keys(),遍歷陣列中所有的索引值,for...of 陣列名稱.key()

(3)values(),遍歷出key值,chrome中未能實現

例子:

<script>
    // entries(),keys()和values() 遍歷陣列
    let arr = ['橙子','西瓜','橙子','葡萄','蘋果','香蕉'];
    console.log(arr.keys());//輸出Array Iterator {  },迭代器介面陣列

    //keys()遍歷陣列中所有的索引值
    //遍歷,輸出key值
    for(let k of arr){
    	console.log(k);//輸出key值,'橙子','西瓜','橙子','葡萄','蘋果','香蕉'
    }

    // 遍歷輸出索引值,只需陣列.key()

	for(let k of arr.keys()){
	    	console.log(k);//輸出索引值值,0,1,2,3,4,5
	    }

	//遍歷出key值,方法二values()
	for(let k of arr.values()){
    	console.log(k);//輸出key值,'橙子','西瓜','橙子','葡萄','蘋果','香蕉'
    }//chrome中沒有實現values()方法

    //entries()遍歷陣列中的key和value

    for(let [key,val] of arr.entries()){
    	console.log(key,val);//輸出0 橙子1 西瓜2 橙子3 葡萄4 蘋果5 香蕉
    }

</script>

6. includes()方法

表示陣列中是否包含某個指定的值,返回布林值

例子:

<script>
    // entries(),keys()和values() 遍歷陣列
    let arr = ['橙子','西瓜','橙子','葡萄','蘋果','香蕉'];
    console.log(arr.includes("西瓜"));//返回true
</script>