1. 程式人生 > 其它 >JavaScript陣列API

JavaScript陣列API

        let arr1=[1,2,3,4];
        let arr2=[5,6,7,8];
       //push()元素直接新增到末尾,可以新增多個元素
       //pop()刪除陣列末尾第一個元素
       //unshift()在陣列開頭插入值,可以新增多個元素
       //shift()在陣列開頭刪除第一個值

       //splice()
       // arr.splice(1, 0, 3, 3, 2, 11);//從索引1開始插入元素,覆蓋0個,分別插入3,3,2,11 如果是0,則預設沒有結束索引值
       // arr.splice(1, 3)   //刪除元素,從索引1開始,刪除3個

       //slice(start,end) 返回擷取後的陣列;[start,end) 類似字串中的subString

       //concat可以合併多個數組,也可以合併字串
       //arr2=arr2.concat(arr1) //1-8,a

        let numbers = [1, 2, 4, 6];
        const isEven = x => x % 2;
        //使用every方法迭代,迭代每個元素,直到返回false;如果都為true,則返回true
        console.log(numbers.every(isEven));
        //使用some方法迭代,迭代每個元素,直到返回true;如果都為false,則返回false
        console.log(numbers.some(isEven));
        //使用foreach方法迭代輸出每個陣列的值 (value,index,arr)
        numbers.forEach(x => console.log(x));
        //使用map方法迭代,迭代每個元素,返回一個數組,儲存每個元素的值
        console.log(numbers.map(isEven));
        //使用filter方法迭代,返回的陣列值都由true元素組成
        console.log(numbers.filter(isEven));

        //使用reduce方法迭代,對一個數組中的所有元素求和
        console.log(numbers.reduce((previous, current) => previous + current));

        //使用form方法複製陣列;numbers為Array
        let arr2 = Array.from(numbers);

        //Array.of()方法 複製陣列
        let arr3 = Array.of(3)

        //Array.fill() value用來填充陣列元素的值。start起始索引 可選;end結束索引 可選
        //建立陣列並初始化值的時候,fill方法非常好用,就像下面這樣
        let arr4 = Array(6).fill(1);

        // copyWithin() 方法淺複製陣列的一部分到同一陣列中的另一個位置,並返回它,不會改變原陣列的長度。'
        const array1 = ['a', 'b', 'c', 'd', 'e'];
        // copy to index 0 the element at index 3
        console.log(array1.copyWithin(0, 3, 4));
        // expected output: Array ["d", "b", "c", "d", "e"]

        // 查詢
        function doSth(element) {
            return element % 2 == 0
        }
        console.log(numbers.find(doSth)); //返回值 2
        console.log(numbers.findIndex(doSth)); //返回索引 1
        console.log(numbers.includes(2));//1.要查詢的值,2.startIndex 返回Boolean值