1. 程式人生 > >JS內建物件方法

JS內建物件方法

  最近,感覺JS有些方法忘記了,這幾天會抽空複習的,先從陣列方法開始,然後是字串方法,然後Math方法,在Data方法。

  我儘可能的全面,但有些真的忘了,甚至忘得連一點印象也沒了。

  array方法:

    ES6:

        find:引數為回撥函式,回撥函式可以接收3個引數,值x,索引 i,陣列arr,糊掉函式預設返回值x;

        findIndex:和find差不多,不過預設返回索引;

        includes:和String的includes一樣,接收2引數,查詢的項以及查詢起始位置;

        keys:對陣列索引進行遍歷;

        values:對陣列項進行遍歷;

        entries:對陣列鍵值進行遍歷;

        fill:方法改變原陣列,當第三個引數大於陣列長度的時候,以最後一位為結束位置;

        Array.of():永遠返回一個數組,引數不分型別,只分數量,數量為0返回空陣列;

        copyWithin:接收三個引數,被替換資料的開始處,替換塊的開始處,替換塊的結束處;copyWithin(s,m,n);

        Array.form():可以吧帶有lenght屬性類似陣列的物件轉換為陣列,也可以吧字串等可以遍歷的物件轉換為陣列,它接收2個引數,轉換物件與回撥函式。

    ES5:

        indexOf():接收兩個引數,要查詢的項和表示查招起點的位置的索引。其中,從陣列的開頭(位置0)開始向後查詢。

        lastIndexOf():接收兩個引數,要查詢的項和表示查招起點的位置的索引。其中,從陣列的結尾開始向後查詢。

        foEach():對陣列進行遍歷迴圈,對陣列的每一項執行給定函式。這個方法沒有返回值,引數都是function型別,預設有傳參引數分別為遍歷的陣列內容;

            對應的陣列索引,陣列本身

        map():指“對映”,對陣列中的每一項執行給定函式返回滿足過濾條件組成的陣列;

        filter():“過濾”功能,陣列中的每一項執行給定函式返回滿足過濾條件組成的陣列;

        every():判斷陣列中每一項都是否滿足條件,只有所有項滿足才會返回true;

        some():判斷陣列中是否存在滿足的項,只要有一項滿足就返回true;

        reduce()和reduceRight():這兩個方法都會實現迭代陣列的所有項然後構建一個最終返回的值。reduce()方法從陣列的第一項開始,逐個遍歷到最後。而

            reduceRight()則從陣列的最後一項開始,向前遍歷到第一項。這兩個方法都接收兩個引數:一個在每一項上呼叫的函式和(可選的)作為歸併

            基礎的初始值。傳給reduce()和reduceRight()的函式接收4個引數,前一個值,當前值,項的索引和陣列物件。這個函式返回的任何值都會作為

            第一個引數自動傳給下一項。第一次迭代發生在陣列的第二項,因此第一個引數是陣列的第一項,第二個引數是陣列的第二項;

    常用方法:

        join():將陣列的元素組成一個字串,以separator為分割符,省略的話則用預設逗號為分割符,該方法只接收一個引數,即分割符;

        push():可以接收任意數量的引數,吧他們逐個新增到陣列的末尾,並返回修改後的陣列的長度;

        pop():陣列末尾移除最後一項,減少陣列的length值,然後返回移除的項。如陣列為空返回undefined;

        shift():刪除原陣列第一項,並返回刪除元素的值;如陣列為空返回undefined;

        unshift():將引數新增到原陣列開頭,並返回陣列的長度;

        sort():按升序排列陣列項--即最小的值位於最前面最大的值位於最後面。sort()方法會呼叫toString()轉型大法,然後比較字串已確定如何排序;

        reverse():反轉陣列項的順序; 

        concat():將引數新增到原陣列中,這個方法會先建立當前陣列一個副本,然後將接收到的引數新增到這個副本的末尾,最後返回新構建的陣列。

            在沒有給concat()方法傳引數的情況下,它只是複製當前陣列並返回副本;

        slice():返回從原陣列中指定開始下標到結束下標之間的項組成的新陣列。可以接收1或兩個引數,即要返回起始和結束位置。slice()在只有一個

            引數的時候返回該引數指定位置開始到當前陣列末尾的所有項。如果有兩個引數,該方法返回起始和結束位置之間的項,但不包括結

            束位置的項;

        splice():是一個很強大的陣列方法,他有很多用法,可以實現刪除,插入和替換。