Как разбить строку по 2 символа, и если символу нет пары добавить ('_')?

Помогите пожалуйста, как На каждой итерации добавь строку с текущим и следующими символами в массив результатов.

function splitString(str) {
  let resArr = [];
  let helpStr = '_';

  for (var i = 0; i < str.length; i = i + 2) {
    let currstr = str[i + 1];

    console.log(currstr)

  }
  return resArr;
}
let = resSplit = splitString('123456');
console.log(resSplit);


Ответы (4 шт):

Автор решения: Михаил В

Ну если я правильно понял, что нужно. Очень просто. Разумеется, мы изначально подразумеваем, что inputString это обычная строка

const inputString = '123456';
let result = [];

for (let i = 0; i < inputString.length; i++) {
  result.push(`${inputString[i]}${ !!inputString[i+1] ? inputString[i+1] : '_' }`);

}

console.log(result);

→ Ссылка
Автор решения: Sergey Glazirin

Не знаю, какой вариант правильный с точки зрения поставленной задачи, привел оба решения.

const inputString = '123456';

const getArray = (str) => str.split('').map((item, index) =>
  `${item},${!!str[index+1] ? str[index+1] : '_'}`
)

console.log(getArray(inputString));

const inputString = '1234567';

const getArray = (str) => {
  let result = [];

  for (let i = 0; i < str.length; i = i + 2) {
    result.push(`${str[i]}${ !!str[i+1] ? str[i+1] : '_' }`);

  }

  return result;
}


console.log(getArray(inputString));

→ Ссылка
Автор решения: Дмитрий Затонский
Function splitString(str) {
    let arr = []`введите сюда код`;
    let symbol = '_';`введите сюда код`

    if (str.length % 2 !== 0) {
        str += symbol;
    }

    for (let i = 0; i < str.length; i = i + 2) {
        arr.push(str[i] + str[i + 1]);
    }
    console.log(arr);
    return arr;
}
→ Ссылка
Автор решения: ksa

Добавлю свои 5коп...

const test = s => s.match(/..?/g).map(v => v.length == 1 ? v + '_' : v)

console.log(test('123456789'))

→ Ссылка