zoukankan      html  css  js  c++  java
  • Js中数组,字符串的常用方法

    一:数组

    1 push() 向数据尾部添加一个或者多个元素,并返回新元素后的数组长度

     注意:该方法会改变原数组。

       var mycars=new Array();

      var arr = [1,2,3];

      var b = arr.push(4);  //当前数组长度为4

    2 pop() 删除数组的最后一个元素,并返回该元素。

       注意:该方法会改变元素组

      var arr = [1,2,3];

      arr.pop();      //当前数组长度为2

    3 unshift() 在数组的第一个位置添加元素,并返回新元素的数组长度

        注意:·该方法会改变原数组

      var arr = [1,2,3];

      arr.unshift("0");    //当前数组长度为4,[0,1,2,3]

    4 shift()删除数组的第一个元素,并返回该元素。该方法还可以遍历并清空一个数组

     注意:该方法会改变原数组

      var arr = ['a','b','c'];

      arr.shift();      //当前数组长度为2,['b','c']

    5 valueOf() 返回数组本身

     var arr = [1,2,3];

     arr.valueOf();      //[1,2,3]

    6 indexOf() 返回指定数组中出现的位置,如果没有出现则返回-1

     var arr = [1,2,3];

     arr.indexOf('1');     //值为1

     arr.indexOf('0');     //值为-1

     arr.indexOf('1',1);    //从第二个位置开始搜索,未搜索到返回-1

    7 toString() 返回数组的字符串形式

     var arr = [1,2,3];

     arr.toString();      //值为"1,2,3"

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

     arr.toString();      //值为“1,2,3,4,5,6”

    8 join() 以参数作为分隔符,将所有数组组成一个字符串返回。如果不提供参数,默认用逗号分隔

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

       arr.join(" ");       //返回'1 2 3 4' 字符串

     arr.join("|")       //返回“1|2|3|4”字符串

     arr.join()        //返回"1,2,3,4"

    9 concat() 用于多个数组的合并,他将新数组的成员添加到元素著的尾部,然后返回一个新数组,元素组不变

      var arr = [1,2,3];

      arr.concat([4,5,6]);   //返回[1,2,3,4,5,6]

    10 reverse() 用于颠倒数组中元素的顺序,返回改变后的数组

      注意:该方法将改变元素组

      var arr = ['a','b','c'];

         arr.reverse()      //返回["c","b","a"]

    11 slice(start,end), 左开右闭,用于截取原数组的一部分,返回一个新数组,原数组不变

      注意:

      • 删除时,两个参数,第一个是开始位置,第二个是删除长度。
      • 插入时,三个参数,第一个是插入位置(在之前插入),第二个是0,第三个是插入的内容。
      • 替换时,三个参数,第一个是开始位置,第二个是删除长度,第三个是替换的内容
        slice(x,y) :从x到y(不包括),并把新的内容作为新的数组返回。原来的数组不变。

      var arr = ['a','b','c'];

      arr.slice(0);      //返回["a","b","c"]

      arr.slice(1);      //返回["b","c"]

      arr.slice(1,2);     //返回["b"]

      arr.slice(2,6);     //返回["c"]

         arr.slice();      //返回["a,"b,"c"]

         arr.slice(-2);     //返回["b","c"],参数是负数,则表示倒数计算的位置

      arr.slice(-2,-1)     //返回["b"]

    12 splice(start,delNum,addElement1,addElement2)删除元素组的一部分成员,并可以在删除位置添加新的数组成员,返回是的被删除的元素

         注意:该方法会改变原数组

       var arr = ['a','b','c','d','e','f'];

       arr.splice(4,2);    //返回["a","b","c","d"],从四号位置删除两个数组成员

       arr.splice(4,2,1,2);   //返回["a","b","c","d",1,2],从四号位置删除两个数组成员,有插入了两个新成员

       arr.splice(-4,2);     //返回["c","d'],其实位置如果是负数,就表示从倒数位置开始删除

       arr.splice(1,0,2);    //返回["a",2,"b","c","d","e","f"],只是向插入元素,第二个参数可以设置为0

       arr.splice(2);        //返回["a","b"],["c","d","e","f"]分两个数组

    13 sort() 对数组成员进行排序,默认是按字典,二进制顺序排队,排序后,元素组将被改变

      var str = ['d','c','b','a'];

      str.sort();      //返回["a","b","c',"d']

    14 map() 对数组的所有成员依次调用一个函数,返回新数组

      注意:原数组不变

      var num = [1,2,3];

      num.map(function(n){

        return n+1;

      })

    15 fifter() 参数是一个函数,所有数组依次执行该函数,返回结果为true的成员组成一个新数组返回

      注意:原数组不变

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

      arr.filter(function(elem){

        return (elem>3);

      });

    二:字符串

    1 charAt:返回字符串的给定位置的字符串

     var arr = 'abcdef';

     arr.length;      //7

        arr.charAt(1);      //b

     arr[1];        //b

    2 concat:连接2个字符串,原字符串不变

      arr.concat("abc");   //"abcdefabc"

    3 substring,substr,slice都可省略第二个参数,表示持续到字符串结束

     arr.substring(1,3);  //"bc",返回x到y(不包括为y)的字符串

     arr.substr(1,3);    //"bcd",返回x开始的长度为y的字符串

     arr.slice(1,3);    //"bc",返回x到y(不包括y)位置颠倒时,结果为空字符串

     arr.slice(3,1);    //" "

    4 trim 去除两端的空格,不影响之前的字符串

     var arr = '     abcdef    ';

     arr.trim();      //"abcdef",半角全角中英文空格tab一招消除

    5 toLowerCase,toUpperCase  转换大小写

      arr.toUpperCase();  //"ABCDEF"

    6 indexOf,lastIndexOf 确定一个字符串在另一个字符串第一次出现的位置,一个从头开始,一个从尾部开始

     var arr = 'abccba';

     arr.indexOf('b');     //1

     arr.lastIndexOf('c');   //3

    7 split  字符串转数组

     var arr ='a b c d e f';

        arr.split(' ');        //["a",''b","c","d","e","f"]

    8 toFixed()  保留小数,结果是字符串类型的

     var a = 1.1212;

     a.toFixed(2);    //1.12

    9 parseInt和parseFloat

     var a = 024;

     parseInt(a,10);   //24

  • 相关阅读:
    Codeforces Round #340 (Div. 2)
    搞清楚一下格式化输出
    TYVJ P1091 等差数列 Label:dp
    TYVJ P1098 任务安排 Label:倒推dp 不懂
    TYVJ P1034 尼克的任务 Label:倒推dp
    TYVJ P1045 &&洛谷 1388 最大的算式 Label:dp
    TYVJ P1046 Blast Label:dp
    TYVJ P1051 选课 Label:多叉转二叉&&树形dp(虐心♥)
    TYVJ P1073 加分二叉树 Label:区间dp
    二叉树遍历入门 Lebal:research
  • 原文地址:https://www.cnblogs.com/HansZimmer/p/9132418.html
Copyright © 2011-2022 走看看