Baseline Widely available
Die fill()
Methode von Array
Instanzen ändert alle Elemente innerhalb eines Indexbereichs in einem Array zu einem statischen Wert. Sie gibt das modifizierte Array zurück.
const array = [1, 2, 3, 4];
// Fill with 0 from position 2 until position 4
console.log(array.fill(0, 2, 4));
// Expected output: Array [1, 2, 0, 0]
// Fill with 5 from position 1
console.log(array.fill(5, 1));
// Expected output: Array [1, 5, 5, 5]
console.log(array.fill(6));
// Expected output: Array [6, 6, 6, 6]
Syntax
fill(value)
fill(value, start)
fill(value, start, end)
Parameter
value
Wert, mit dem das Array gefüllt werden soll. Beachten Sie, dass alle Elemente im Array genau diesen Wert haben werden: wenn value
ein Objekt ist, wird jeder Platz im Array auf dieses Objekt verweisen.
start
Optional
Der nullbasierte Index, an dem das Füllen beginnt, konvertiert in eine Ganzzahl.
-array.length <= start < 0
, wird start + array.length
verwendet.start < -array.length
oder start
weggelassen wird, wird 0
verwendet.start >= array.length
, wird kein Index gefüllt.end
Optional
Der nullbasierte Index, an dem das Füllen endet, konvertiert in eine Ganzzahl. fill()
füllt bis, aber nicht einschlieÃlich end
.
-array.length <= end < 0
, wird end + array.length
verwendet.end < -array.length
, wird 0
verwendet.end >= array.length
oder end
weggelassen oder undefined
ist, wird array.length
verwendet, wodurch alle Indizes bis zum Ende gefüllt werden.end
eine Position vor oder an der Position angibt, die start
angibt, wird nichts gefüllt.Das modifizierte Array, gefüllt mit value
.
Die fill()
Methode ist eine mutierende Methode. Sie verändert nicht die Länge von this
, aber sie wird den Inhalt von this
ändern.
Die fill()
Methode füllt auch leere Stellen in sparse Arrays mit value
.
Die fill()
Methode ist generisch. Sie erwartet nur, dass der this
Wert eine length
Eigenschaft hat. Obwohl Strings auch array-ähnlich sind, ist diese Methode nicht geeignet, um auf ihnen angewendet zu werden, da Strings unveränderlich sind.
Hinweis: Die Verwendung von Array.prototype.fill()
auf einem leeren Array (length = 0
) würde es nicht modifizieren, da das Array nichts zu modifizieren hat. Um Array.prototype.fill()
beim Deklarieren eines Arrays zu verwenden, stellen Sie sicher, dass das Array eine Nicht-Null-length
hat. Siehe Beispiel.
console.log([1, 2, 3].fill(4)); // [4, 4, 4]
console.log([1, 2, 3].fill(4, 1)); // [1, 4, 4]
console.log([1, 2, 3].fill(4, 1, 2)); // [1, 4, 3]
console.log([1, 2, 3].fill(4, 1, 1)); // [1, 2, 3]
console.log([1, 2, 3].fill(4, 3, 3)); // [1, 2, 3]
console.log([1, 2, 3].fill(4, -3, -2)); // [4, 2, 3]
console.log([1, 2, 3].fill(4, NaN, NaN)); // [1, 2, 3]
console.log([1, 2, 3].fill(4, 3, 5)); // [1, 2, 3]
console.log(Array(3).fill(4)); // [4, 4, 4]
// A single object, referenced by each slot of the array:
const arr = Array(3).fill({}); // [{}, {}, {}]
arr[0].hi = "hi"; // [{ hi: "hi" }, { hi: "hi" }, { hi: "hi" }]
Verwendung von fill(), um eine Matrix aus Einsen zu erstellen
Dieses Beispiel zeigt, wie man eine Matrix aus Einsen erstellt, ähnlich der ones()
Funktion von Octave oder MATLAB.
const arr = new Array(3);
for (let i = 0; i < arr.length; i++) {
arr[i] = new Array(4).fill(1); // Creating an array of size 4 and filled of 1
}
arr[0][0] = 10;
console.log(arr[0][0]); // 10
console.log(arr[1][0]); // 1
console.log(arr[2][0]); // 1
Verwendung von fill(), um ein leeres Array zu füllen
Dieses Beispiel zeigt, wie man ein Array füllt, indem alle Elemente auf einen bestimmten Wert gesetzt werden. Der end
Parameter muss nicht angegeben werden.
const tempGirls = Array(5).fill("girl", 0);
Beachten Sie, dass das Array ursprünglich ein sparse array ohne zugewiesene Indizes war. fill()
ist dennoch in der Lage, dieses Array zu füllen.
Die fill()
Methode liest die length
Eigenschaft von this
und setzt den Wert jeder ganzzahligen Schlüssel-Eigenschaft von start
bis end
.
const arrayLike = { length: 2 };
console.log(Array.prototype.fill.call(arrayLike, 1));
// { '0': 1, '1': 1, length: 2 }
Spezifikationen Browser-Kompatibilität Siehe auch
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4