Итерируйте arr1
с Array.map()
и используйте внешний счетчик.Когда значение равно 'x'
, используйте значение counter для получения значения из arr2
и увеличьте значение счетчика:
const arr1 = ['1', 'x', '0', 'x']
const arr2 = ['2', '5']
let counter = 0;
const result = arr1.map(c => c === 'x' ? arr2[counter++] : c);
console.log(result);
Если вы можете изменить arr2
, вы можете использовать shift
, чтобы получить предмет вместо счетчика:
const arr1 = ['1', 'x', '0', 'x']
const arr2 = ['2', '5']
const result = arr1.map(c => c === 'x' ? arr2.shift() : c);
console.log(result);