Как я могу разбить массив javascript и заменить его элементы? - PullRequest
0 голосов
/ 27 мая 2020

обновлено Я новичок в этом. Я искал везде и пробовал все под солнцем, чтобы исправить это самостоятельно. Мои данные взяты из текстового ввода, где мне нужно прочитать строку c. Мой код отлично читает строки, используя метод slice (2,1). Теперь мне нужно использовать данные для других целей.

моя извлеченная строка из чтения строк данных с 3-й строки до 2-й последней строки, и это уже работает:

var x = readData.slice (2, -1) .toString ();

Вывод с использованием console.log (x); // 0 1,2 3,4 5 как должно быть

но я хочу: '0,1', '2,3', '4,5'

Чтобы я мог использовать эти данные для других целей.

Я пробовал:

var x = readData.slice (2, -1) .toString (). Split ('', -1);

это дает me: ['0', '1,2', '3,4', '5'] // ближайший

Я также пробовал:

var x = readData .slice (2, -1) .toString (). replace (/ \ s / g, ',') .split ("", -1); что дает ['0,', '1,2,', '3,4,', '5']

var x = [x.split ('') .join (',') ]; что дает ['0,1,2,3,4,5']

и еще несколько других комбинаций. Кто-нибудь может помочь?

Ответы [ 2 ]

0 голосов
/ 27 мая 2020

Согласно следующему утверждению

.replace(/\s/g, ', ').split(" ", -1); which gives [ '0,', '1,2,', '3,4,', '5' ]

в вопросе, это 0 1,2 3,4 5 является строкой, поэтому вы можете разделить их запятыми, а затем сопоставить строки в соответствии с желаемым результатом

console.log("0 1,2 3,4 5".split(",").map(s => s.split(/\s+/g).join(",")));
0 голосов
/ 27 мая 2020

Вы можете разделить каждый string в array на space, а затем объединить их , следующим образом:

let arr = ['0 1','2 3','4 5'];
for(let i = 0; i < arr.length; i++)
     arr[i] = arr[i].split(' ').join(',');
console.log(arr)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...