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

时间:2009-12-23 15:01:58

标签: javascript string

我有一个包含数字的变量

var simpleNumber = 012345678;

我想.split()这个数字并创建一个每3个数字

的数组

数组应该如下所示

[012, 345, 678]

var splitedArray = simpleNumber.toString().split(/*how do i split this?*/);

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

由于

2 个答案:

答案 0 :(得分:12)

您可以尝试:

var splittedArray = "012345678".match(/.../g);

function tridigit(n) {
    return n.toString().match(/.{1,3}/g);
}

请注意,如果您为数字加前一个零,则它将以八进制解释。八进制文字已被正式弃用,但目前仍受支持。在任何情况下,数字都没有前导零,因此当您将数字转换为字符串时,它不会出现。

在Safari和FF上进行测试,前导0和8或9的数字在基数10中解释,因此八进制转换可能不是您的具体示例的问题,但在一般情况下这将是一个问题

答案 1 :(得分:0)

试试这个

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/