Нужно специально мутировать входной массив
В задаче требуется нарочно мутировать входящий массив в функцию.
function replaceItemsAndMutate(arr, item, replaceItem) {
}
const array = ['qwerty',2,3,7,56,3]
replaceItemsAndMutate(array, 3, 'replaced')
console.log(array) // ['qwerty',2,'replaced',7,56, 'replaced]
Я понимаю как сделать так что бы не мутировал, но мне нужно именно с мутацией.
function replaceWithoutMutating(arr, item, replaceItem) {
const newArray = arr.map((el) => {
if (el === item) el = replaceItem;
return el;
});
return newArray;
}
Ответы (1 шт):
Автор решения: OPTIMUS PRIME
→ Ссылка
const array = ['qwerty', 2, 3, 7, 56, 3];
replaceItemsAndMutate(array, 3, 'replaced');
console.log(array);
function replaceItemsAndMutate(arr, item, replaceItem) {
for (let i = 0; i < arr.length; i++) {
if (arr[i] === item) arr[i] = replaceItem;
}
}
code { white-space: nowrap !important }
Через forEach будет так:
arr.forEach((el, i) => {
if (el === item) arr[i] = replaceItem;
});