Javascript .split () строка для каждого количества символов - PullRequest
2 голосов
/ 23 декабря 2009

У меня есть переменная, которая содержит число

var simpleNumber = 012345678;

Я хочу .split() это число и создать массив, который будет состоять из каждых 3 чисел

массив должен выглядеть следующим образом

[012, 345, 678]

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

это часть функции getRGB ("ffffff"), поэтому я не могу знать, что будет передано.

Спасибо

Ответы [ 2 ]

12 голосов
/ 23 декабря 2009

Вы можете попробовать:

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

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

Обратите внимание, что если вы ставите число перед нулем, оно будет интерпретироваться как восьмеричное. Восьмеричные литералы официально устарели, но пока поддерживаются. В любом случае числа не имеют начальных нулей, поэтому они не появятся при преобразовании числа в строку.

При тестировании в Safari и FF числа с начальными 0 и 8 или 9 интерпретируются в базе 10, поэтому восьмеричное преобразование, вероятно, не будет проблемой для вашего конкретного примера, но это будет проблемой в общем случае. .

0 голосов
/ 27 декабря 2012

Попробуйте это

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/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...