【js】常用方法彙總

* 字符串的常用方法:

 

      var  str  = 'jiuke';
    

     * str.length  ,字符串的長度

     * str.charAt(索引),返回值是指定索引位置的字符串,超出索引,結果是空字符串

     * String.fromCharCode(數字值,可以是多個參數),返回的是ASCII碼對應的值

     * str.concat(字符串1,字符串2,...);返回的是拼接之後的新的字符串

     * str.indexOf(要找的字符串,從某個位置開始的索引);返回的是這個字符串的索引值,沒找到則返回-1

     * str.lastIndexOf(要找的字符串);從後向前找,但是索引仍然是從左向右的方式,找不到則返回-1

     * str.replace("原來的字符串","新的字符串");用來替換字符串的

     * str.slice(開始的索引,結束的索引);從索引5的位置開始提取,到索引爲10的前一個結束,沒有10,並返回這個提取後的字符串

     * str.split("要去掉的字符串",去掉後留下的個數);  以某個字符串分割str,並返回數組

     * str.substr(開始的位置,個數);返回的是截取後的新的字符串

     * str.substring(開始的索引,結束的索引);返回截取後的字符串,不包含結束的索引的字符串

     * str.toLocaleLowerCase();轉小寫

     * str.toLowerCase();轉小寫

     * str.toLocaleUpperCase();轉大寫

     * str.toUpperCase();轉大寫

     * str.trim();去掉字符串兩端的空格

 

* Array的常用方法;


  * Array.isArray(對象);判斷這個對象是不是數組

var arr = [1,4,3,5,2];

Array.isArray(arr)     //true

arr instanceof Array; // true,  

//上述兩種方法都都可以判斷是不是Array,

  * instanceof      用於測試構造函數的prototype屬性是否出現在對象的原型鏈中的任何位置

function Car(make, model, year) {
    this.make = make;
    this.model = model;
    this.year = year;
}
var auto = new Car('Honda', 'Accord', 1998);

console.log(auto instanceof Car); // true
console.log(auto instanceof Object); // true
console.log(auto instanceof Array); // false

     * .concat(數組,數組,數組,...)     用於合併兩個或多個數組。此方法不會更改現有數組,而是返回一個新數組。

 var arr = [1,4,3,5,2];

 var arr1 = arr.concat([8,9],[23])
 
 console.log(arr)     //[1, 4, 3, 5, 2]
 
 console.log(arr1)    //[1, 4, 3, 5, 2, 8, 9, 23]

     * .every(函數)   是對數組中每一項運行給定函數,如果該函數對每一項都返回true,則返回true。

     * .some(函數)   是對數組中每一項運行給定函數,只要該函數對一項返回true,則返回true。

    var arr = [ 1, 2, 3, 4, 5, 6 ];
        
    //some函數從第一項開始循環,循環到4的時候,符合條件,則結束循環,返回true
    let arrSome = arr.some( function( item, index, array ){
        console.log( 'item=' + item + ',index='+index+',array='+array );
        return item > 3;
    })

    console.log(arrSome);   //true

    //every函數從第一項開始循環,循環到1的時候,不符合條件,則結束循環,返回false,只有所有的值都符合條件,纔回返回true
    let arrEvery = arr.every( function( item, index, array ){
        console.log( 'item=' + item + ',index='+index+',array='+array );
        return item > 3;
    })
    console.log(arrEvery);  //false

     * .filter(函數);創建一個新的數組,新數組中的元素是通過檢查指定數組中符合條件的所有元素。不會對空數組進行檢測。不會改變原始數組。

    var arr = [ 1, 2, 3, 4, 5, 6 ];

    function checkAdult(age) {
        return age > 3;
    }

    console.log(arr.filter(checkAdult));   //[4, 5, 6]

     * .push(值);把值追加到數組最後 ,返回值也是追加到數據之後的數組長度

    var arr = [ 1, 2, 3, 4, 5, 6 ];

    arr.push(10,9)

    console.log(arr)  //[1, 2, 3, 4, 5, 6, 10, 9]

     * .pop();刪除數組中最後一個元素,返回值就是刪除的這個值

     * .shift();刪除數組中第一個元素,返回值就是刪除的這個值

     * .unshift();向數組的第一個元素前面插入一個新的元素,----返回值是插入後的程度

     * .indexOf(元素值);返回的是索引,沒有則是-1

     * .join("字符串分隔符");數組中的所有元素放入一個字符串。元素是通過指定的分隔符進行分隔的。

    var arr = [ 1, 2, 3, 4, 5, 6 ];

    let arrPop = arr.pop();
    console.log(arrPop,arr)   //6,[1, 2, 3, 4, 5]

    let arrShift = arr.shift();
    console.log(arrShift,arr)   //1,[1, 2, 3, 4, 5]

    let arrUnshift = arr.unshift(9);
    console.log(arrUnshift,arr)  //5,[1, 2, 3, 4, 5]

    console.log(arr.indexOf(3))    //2
    console.log(arr.join('-'))     //1-2-3-4-5-6

     * .forEach(函數);遍歷數組,相當於for循環

     * .map(函數);遍歷數組,把執行後的結果重新的全部的放在一個新的數組中

    var arr = [ 1, 2, 3, 4, 5, 6 ];
    
    //forEach沒有返回值,只是遍歷數組中的每一項,不對原來數組進行修改,但是可以自己通過數組的索引來修改原來的數組
    arr.forEach( function( item, index, array ){
        console.log( "index[" + index + "]: " + item );
    })

    //map 有返回值,return的是什麼,相當於把數組中的這一項變爲什麼(並不影響原來的數組,只是相當於把原數組克隆了一份,把克隆這一份的數組中的對應項改變了 );
    var arrMap = arr.map( function( item, index, array ){
        return item*2
    })
    
    console.log(arrMap);    //[2, 4, 6, 8, 10, 12]

     * .reverse();反轉數組

     * .sort();用於對數組的元素進行排序。

    //reverse和sort都是在原來的基礎上改變,不生成新的數組
    var arr = [ 1, 5, 4, 2, 3, 6 ];

    console.log(arr.reverse())    //[6, 3, 2, 4, 5, 1]

    arr.sort(function (a,b) {
        return a - b
    })
    console.log(arr)     //[1, 2, 3, 4, 5, 6]

     * .arr.slice(開始的索引,結束的索引);把截取的數組的值放在一個新的數組中,但是不包含結束的索引對應的元素值

     * .splice(開始的位置,要刪除的個數,替換的元素的值);一般是用於刪除數組中的元素,或者是替換元素,會直接對數組進行修改。

    var arr = [ 1, 2, 3, 4, 5, 6 ];

    var arrSlice = arr.slice(0,3)
    console.log(arrSlice)   //[1, 2, 3]

    var arrSplice = arr.splice(1,2,'joke')
    console.log(arrSplice)  //[2, 3]

    console.log(arr)  //[1, "joke", 4, 5, 6]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章