代码之家  ›  专栏  ›  技术社区  ›  adardesign

javascript.split()每个字符数的字符串

  •  2
  • adardesign  · 技术社区  · 15 年前

    我有一个变量可以容纳一个数字

    var simpleNumber = 012345678;
    

    我想 .split() 并创建一个数组,该数组将为每3个数字

    数组应该如下所示

    [012, 345, 678]
    
    var splitedArray = simpleNumber.toString().split(/*how do i split this?*/);
    

    它是getrgb(“ffffff”)函数的一部分,因此我不知道将传入什么。

    谢谢

    2 回复  |  直到 11 年前
        1
  •  12
  •   outis    15 年前

    您可以尝试:

    var splittedArray = "012345678".match(/.../g);
    
    function tridigit(n) {
        return n.toString().match(/.{1,3}/g);
    }
    

    请注意,如果在数字前面加上零,它将被解释为八进制。八进制文字被正式否决,但暂时支持。在任何情况下,数字都没有前导零,因此当您将数字转换为字符串时,它不会出现。

    对safari和ff进行测试时,以0和8或9开头的数字以10为基数进行解释,因此八进制转换在您的特定示例中可能不会出现问题,但在一般情况下会出现问题。

        2
  •  0
  •   kamal    12 年前

    试试这个

    var num = 123456789+"";// converting the number into string
    var x1=num[0]+num[1]+num[2];//storing the individual values
    var y1=new Array(x1);// creating a first group out of the first 3 numbers
    var x2=num[3]+num[4]+num[5];
    var y2=new Array(x2);// creating a second group out of the next 3 numbers
    var x3=num[6]+num[7]+num[8];
    var y3=new Array(x3);// creating a third group out of the next 3 numbers
    var result=y1.concat(y2,y3);// concat all the 3 array
    document.write(result);you get the output in the form of array
    document.write("<br/>");
    document.write(result[0]);
    document.write("<br/>");
    document.write(result[1]);
    document.write("<br/>");
    document.write(result[2]);
    

    检查下面的链接以了解工作示例 http://jsfiddle.net/informativejavascript/c6gGF/4/