Ce face Array.prototype.with
with este varianta fără efecte secundare a lui tablou[indice] = valoare: originalul rămâne la fel, iar copia are valoarea nouă pe poziția cerută. Acceptă indici negativi.
Dacă indicele este în afara tabloului, aruncă RangeError, nu adaugă elemente noi.
Parametri
| Parametru | Descriere |
|---|---|
indice |
Poziția înlocuită. Negativ: de la sfârșit. |
valoareNoua |
Valoarea pusă pe acea poziție. |
Ce returnează
Un tablou nou.
Exemple
Exemplul 1: Înlocuirea unei valori
const scoruri = [10, 20, 30];
console.log(scoruri.with(1, 25));
console.log(scoruri.with(-1, 0));
console.log(scoruri);
try {
scoruri.with(5, 1);
} catch (eroare) {
console.log(eroare.name);
}
Rezultat
[ 10, 25, 30 ]
[ 10, 20, 0 ]
[ 10, 20, 30 ]
RangeError
Greșeli frecvente
- Folosești
withca să adaugi un element la sfârșit. Merge doar pentru poziții existente; pentru adăugare folosește[...tablou, valoare].
Comenzi înrudite
Array.prototype.toSpliced: Returnează o copie a tabloului cu elemente șterse, înlocuite sau inserate, fără să modifice originalul.Array.prototype.at: Returnează elementul de la o poziție; cu indice negativ numără de la sfârșitul tabloului.... (spread): Desface un tablou sau un obiect în elementele lui. Folosit pentru copii și combinări.