[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Array/with [Back]  [Original]

Array.prototype.with() - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Array.prototype.with()

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2023 browserbergreifend verfgbar.

Die with()-Methode von Array-Instanzen ist die kopierende Version der Verwendung der Klammernotation, um den Wert eines gegebenen Index zu ndern. Sie gibt ein neues Array zurck, bei dem das Element am gegebenen Index durch den angegebenen Wert ersetzt wird.

In diesem Artikel

Syntax

js
arrayInstance.with(index, value)

Parameter

index

Nullbasierter Index, an dem das Array gendert wird, umgewandelt zu einer Ganzzahl.

  • Ein negativer Index zhlt rckwrts vom Ende des Arrays wenn -array.length <= index < 0, wird index + array.length verwendet.
  • Wenn der Index nach der Normalisierung auerhalb der Grenzen liegt, wird ein RangeError ausgelst.
value

Jeder Wert, der dem angegebenen Index zugewiesen werden soll.

Rckgabewert

Ein neues Array mit dem Element an index, das durch value ersetzt wurde.

Ausnahmen

RangeError

Ausgelst, wenn index >= array.length oder index < -array.length.

Beschreibung

Die with()-Methode ndert den Wert eines angegebenen Index im Array und gibt ein neues Array zurck, bei dem das Element am gegebenen Index durch den angegebenen Wert ersetzt wird. Das ursprngliche Array wird nicht verndert. Dies ermglicht es Ihnen, Array-Methoden zu verketten, whrend Sie Manipulationen vornehmen.

Durch die Kombination von with() mit at() knnen Sie ein Array sowohl mit negativen Indizes schreiben als auch lesen (beziehungsweise).

Die with()-Methode erzeugt niemals ein sparses Array. Wenn das Quell-Array sparse ist, werden die leeren Slots im neuen Array durch undefined ersetzt.

Die with()-Methode ist generisch. Sie erwartet lediglich, dass der this-Wert eine length-Eigenschaft und ganzzahlig indizierte Eigenschaften besitzt.

Beispiele

Ein neues Array mit einem einzelnen genderten Element erstellen

js
const arr = [1, 2, 3, 4, 5];
console.log(arr.with(2, 6)); // [1, 2, 6, 4, 5]
console.log(arr); // [1, 2, 3, 4, 5]

Verkettung von Array-Methoden

Mit der with()-Methode knnen Sie ein einzelnes Element in einem Array aktualisieren und dann andere Array-Methoden anwenden.

js
const arr = [1, 2, 3, 4, 5];
console.log(arr.with(2, 6).map((x) => x ** 2)); // [1, 4, 36, 16, 25]

Verwendung von with() auf sparsen Arrays

Die with()-Methode erstellt immer ein dichtes Array.

js
const arr = [1, , 3, 4, , 6];
console.log(arr.with(0, 2)); // [2, undefined, 3, 4, undefined, 6]

Aufruf von with() auf Nicht-Array-Objekten

Die with()-Methode erstellt und gibt ein neues Array zurck. Sie liest die length-Eigenschaft von this und greift dann auf jede Eigenschaft zu, deren Schlssel eine nicht negative ganze Zahl kleiner als length ist. Whrend auf jede Eigenschaft von this zugegriffen wird, wird das Array-Element mit einem Index, der dem Schlssel der Eigenschaft entspricht, auf den Wert der Eigenschaft gesetzt. Schlielich wird der Array-Wert bei index auf value gesetzt.

js
const arrayLike = {
  length: 3,
  unrelated: "foo",
  0: 5,
  2: 4,
  3: 3, // ignored by with() since length is 3
};
console.log(Array.prototype.with.call(arrayLike, 0, 1));
// [ 1, undefined, 4 ]

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-array.prototype.with

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page