2. Datenstruktur – Array

Array-Definition

  1. Ist eine 相同类型Datenstruktur, die aus Elementen besteht.
  2. Es speichert ein Array von Elementen im Speicher 连续存储und 索引greift über jedes Element auf bestimmte Elemente im Array zu.
  3. Array容量也就是长度会在一开始就被确定

Vorteil

  1. Schneller Zugriff: Da die Elemente eines Arrays an zusammenhängenden Speicherorten gespeichert werden, kann durch Subskription schnell auf jedes Element des Arrays zugegriffen werden. Dies ermöglicht einen sehr schnellen Array-Zugriff, insbesondere bei der Bearbeitung von Elementen, beispielsweise beim Einfügen, Löschen oder Aktualisieren von Elementen.

  2. Effiziente Speichernutzung: Da die Elemente in einem Array an zusammenhängenden Speicherorten gespeichert werden, weisen Arrays im Allgemeinen eine höhere Speichernutzung auf als andere Datenstrukturen wie verknüpfte Listen.

  3. Einfach zu verwenden: Array ist eine grundlegende Datenstruktur, die einfach zu verwenden und zu schreiben ist. Die meisten Programmiersprachen bieten native Array-Typen und Indexzugriffsoperationen, wodurch die Verwendung und Bedienung von Arrays sehr einfach ist.

Mangel

  1. Nicht leicht erweiterbar: In den meisten Programmiersprachen ist die Größe von Arrays fest. Wenn Sie weitere Elemente hinzufügen müssen, müssen Sie normalerweise ein größeres Array neu erstellen und dabei die Elemente aus dem ursprünglichen Array in das neue Array kopieren. Dies kann zu Leistungsproblemen und zusätzlichem Speicherverbrauch führen.

  2. Einfüge- und Löschvorgänge sind langsam: Beim Einfügen oder Löschen von Elementen in ein Array müssen alle nachfolgenden Elemente verschoben werden, was zu Leistungseinbußen führen kann, insbesondere wenn die Array-Größe erweitert werden muss.
    Fügen Sie hier eine Bildbeschreibung ein

  3. Nicht zum Speichern großer Datensätze geeignet: Da Arrays zusammenhängend im Speicher gespeichert werden, kann es beim Speichern großer Datensätze zu Speicherproblemen kommen. Große Arrays überschreiten möglicherweise die Systemspeichergrenzen und können nicht erstellt werden.

Array-Struktur in js

Nachdem wir die Definition eines Arrays verstanden haben, werden wir feststellen, dass Arrays in js etwas ganz Besonderes sind. Es kann eine Vielzahl von Datentypen speichern und seine Kapazität jederzeit erweitern. Es scheint, dass es überhaupt nicht als Array bezeichnet werden kann.

Implementierungsprinzip
Tatsächlich können Arrays in js als spezielle Objekte betrachtet werden, die mithilfe einer Hash-Tabelle implementiert werden.
Eine Hash-Tabelle ist eine Datenstruktur, die Daten in Form von Schlüssel-Wert-Paaren speichert, wobei die Schlüssel durch eine Hash-Funktion in entsprechende Indizes umgewandelt werden und die Werte dann an den entsprechenden Positionen im Array gespeichert werden. Durch die Hash-Tabellenmethode ist das JavaScript-Array tatsächlich eine Hash-Tabelle im Inneren, und jedes Element wird über eine Hash-Funktion einer anderen Indexposition zugeordnet.

Eigenschaften
Da Arrays in JavaScript durch Objekte implementiert werden, weisen sie einige Eigenschaften von Objekten auf. Sie können beispielsweise jede Art von Wert in einem Array speichern, z. B. Zahlen, Zeichenfolgen, Objekte, Funktionen usw. Arrays können auch andere Arrays oder Objekte enthalten und so mehrdimensionale Arrays oder komplexe Datenstrukturen bilden.

Ein weiteres wichtiges Merkmal besteht darin, dass ein Array, da es im Wesentlichen ein Objekt ist, einige der Methoden und Eigenschaften des Objekts erbt. Sie können beispielsweise Object.keys() verwenden, um die Schlüsselnamen im Array abzurufen, Object.values(), um die Werte im Array abzurufen, und Object.hasOwnProperty(), um zu bestimmen, ob ein Schlüssel im Array vorhanden ist .

Nachteile
Es ist jedoch wichtig zu beachten, dass Arrays in JavaScript im Vergleich zu Arrays im herkömmlichen Sinne einige Nachteile haben. JavaScript-Arrays können aufgrund zugrunde liegender Implementierungsgründe bei der Ausführung bestimmter Vorgänge langsamer sein. Beim Einfügen oder Löschen von Elementen muss beispielsweise Speicherplatz neu zugewiesen und Elemente kopiert werden, was zu einer langsameren Leistung führen kann. Da die Elemente des Arrays nicht zusammenhängend gespeichert werden, kann außerdem die Leistung des Direktzugriffs auf Elemente relativ gering sein.

Im Allgemeinen können js-Arrays als mit Arrays abgedeckte Objekte betrachtet werden. Aufgrund der Kapselungsunterstützung der zugrunde liegenden API weisen sie jedoch einige Eigenschaften von Arrays auf und sind sogar leistungsfähiger als der ursprüngliche Array-Typ.

Supongo que te gusta

Origin blog.csdn.net/qq_44473483/article/details/134814012
Recomendado
Clasificación