Heim  >  Artikel  >  Web-Frontend  >  Zusammenfassung und Weitergabe des Wissens über JS-Arrays

Zusammenfassung und Weitergabe des Wissens über JS-Arrays

小云云
小云云Original
2018-03-28 15:52:491310Durchsuche

Die Methode


1、 indexOf hat zwei Nachteile: Sie ist nicht semantisch genug. Ihre Bedeutung besteht darin, die erste Vorkommensposition des Parameterwerts zu finden zu vergleichen, um zu sehen, ob es nicht auftritt. Es ist gleich -1, was nicht intuitiv genug ist, um es auszudrücken. Zweitens wird intern der strikte Gleichheitsoperator (===) zur Beurteilung verwendet, was zu einer Fehleinschätzung von NaN führt. Die Methode

NaN!=NaN
//ES5[NaN].indexOf(NaN)// -1
//ES6[1, 2, NaN].includes(NaN) // true

2、 fill kann auch den zweiten und dritten Parameter akzeptieren, mit denen die Start- und Endpositionen der Füllung angegeben werden.

Wenn der ausgefüllte Typ ein Objekt ist, ist das zugewiesene Objekt dieselbe Speicheradresse und nicht das Deep-Copy-Objekt.

let arr = new Array(3).fill({name: "Mike"});arr[0].name = "Ben";
arr// [{name: "Ben"}, {name: "Ben"}, {name: "Ben"}]let arr = new Array(3).fill([]);
arr[0].push(5);arr// [[5], [5], [5]]

3. Die find-Methode der -Array-Instanz wird verwendet Finden Sie die ersten Array-Mitglieder, die die Kriterien erfüllen. Sein Parameter ist eine Rückruffunktion, und alle Array-Mitglieder führen die Rückruffunktion nacheinander aus, bis das erste Mitglied mit dem Rückgabewert true gefunden wird, und geben dann dieses Mitglied zurück. Wenn keine berechtigten Mitglieder vorhanden sind, wird undefined zurückgegeben. Die Verwendung der -Methode der findIndex-Array-Instanz ist der find-Methode sehr ähnlich und gibt die Position des ersten geeigneten Array-Mitglieds zurück, falls alle Mitglieder Wenn keine der Bedingungen erfüllt ist, wird -1 zurückgegeben. Beide Methoden können einen zweiten Parameter akzeptieren, nämlich das this-Objekt, das zum Binden der Rückruffunktion verwendet wird.

4. Die copyWithin-Methode der -Array-Instanz kopiert das Mitglied an der angegebenen Position auf andere Mitglieder innerhalb des aktuelle Array-Position (überschreibt das ursprüngliche Mitglied) und gibt dann das aktuelle Array zurück. Mit anderen Worten: Durch die Verwendung dieser Methode wird das aktuelle Array geändert.

它接受三个参数。

  • target(必需):从该位置开始替换数据。如果为负值,表示倒数。

  • start(可选):从该位置开始读取数据,默认为 0。如果为负值,表示倒数。

  • end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数。

[1, 2, 3, 4, 5].copyWithin(0, 2, 4)// [3, 4, 3, 4, 5]

4、Array.of基本上可以用来替代Array()new Array(),并且不存在由于参数不同而导致的重载。它的行为非常统一。

//ES6Array.of() 
// []Array.of(undefined) 
// [undefined]Array.of(1) 
// [1]Array.of(1, 2) 
// [1, 2]//ES5Array() 
// []Array(3) 
// [, , ,]Array(3, 11, 8) 
// [3, 11, 8]

Array.of方法可以用下面的代码模拟实现。

function ArrayOf(){
  return [].slice.call(arguments);}

相关推荐:

js数组操作实例分析

JS数组去重方法总结

js数组常用的一些排序法

Das obige ist der detaillierte Inhalt vonZusammenfassung und Weitergabe des Wissens über JS-Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn