【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]

 

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