Heim > Web-Frontend > js-Tutorial > Hauptteil

Zusammenfassung gängiger API-Methoden und Traversal-Methoden für JavaScript-Arrays (mit Beispielen)

不言
Freigeben: 2019-04-11 10:36:00
nach vorne
2127 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Zusammenfassung gängiger API-Methoden und Traversal-Methoden für JavaScript-Arrays (mit Beispielen). Ich hoffe, dass er für Sie hilfreich ist.

Array (Array)

ES5 *

map

Syntax: [].map(function(item, index, array) {return xxx} )
Funktion: Durchlaufen Sie das Array und geben Sie ein neues Array zurück, das aus dem Rückrufwert besteht. Das ursprüngliche Array wird nicht geändert und das leere Array wird nicht erkannt

forEach

Syntax: [].forEach( function(item, index, array) {})
Funktion: Kann nicht unterbrochen werden. Sie können throw new Error in try/catch verwenden, um zu stoppen, ohne das ursprüngliche Array zu ändern

Filter

Syntax: [].filter(function(item, index, array) {})
Funktion: Filter, gibt das gefilterte Array zurück, ändert das ursprüngliche Array nicht und erkennt keine leeren Arrays

zB:

const data = [-8, 9, 5, 3];
const res = data.filter(function(item) {
    if (item > 3) {
      return item
    }
});
console.log(res); // [9, 5]
Nach dem Login kopieren

einige

Grammatik: [].some(function(item, index, array) {})
Funktion: Wenn ein Element „true“ zurückgibt, ist das Ganze wahr, 不改变原数组

jeder

Grammatik:[].every(function(item, index, array) {})
Funktion: Alle Bedingungen müssen erfüllt sein, um „true“ zurückzugeben. Wenn ein Element „false“ zurückgibt, ist das Ganze „falsch“ 不改变原数组

Join

Syntax: [].join(str)
Funktion: Gibt das zu einem String verkettete Array zurück, indem der Connector str angegeben wird, 不改变原数组

Push / Pop

Syntax: [].push(item)   /  [].pop(item)
Funktion: Push und Pop am Ende des Arrays Pop Pop, Länge/Popup-Element des geänderten Arrays zurückgeben, 改变原数组

unshift/shift

Syntax : [].unshift(item)   /  [].shift(item)
Funktion: Push Unshift und Pop Shift am Kopf des Arrays, gibt die Länge/das Popup-Element des geänderten Arrays zurück, 改变原数组

sort(fn) / reverse

Syntax: [].sort(fn)   [].reverse()
Funktion: Nach Regeln sortieren und umkehren, 改变原数组

spleißen

Syntax: [].splice(start, number, value1, value2...)
Funktion: An zurückgeben Array aus gelöschten Elementen, löschen Sie start-Werte beginnend mit number und fügen Sie die valueN-Parameterliste in ein Array ein, 改变原数组

concat

Syntax: [].concat([])
Funktion: Verbinde n (n >= 2) Arrays und gebe eine Kopie des Arrays nach der Array-Verbindung zurück, flache Kopie, 不改变原数组

Slice

Syntax: [].slice(start, end)
Funktion: Gibt das abgeschnittene neue Array zurück, 不改变原数组

indexOf / lastIndexOf( value, fromIndex)

Syntax:[].indexOf(value[, fromIndex])
Funktion:
Suchen Array-Element
indexOf Beginnen Sie mit fromIndex (Standard ist 0) und schauen Sie rückwärts value
lastIndexOf Suchen Sie vorwärts fromIndexvalue beginnend mit
(Standard ist -1) und geben Sie den entsprechenden Index zurück zum Wert

reduce / ReduceRight

Syntax: reduce / reduceRight(callback[, initialValue])
Funktion: Paarweise ausgeführt, prev ist der Rückgabewert der letzten vereinfachten Funktion, cur ist der aktuelle Wert (beginnend mit das zweite Element)
Parameter der Rückruffunktion: vorheriger Wert ( previousValue), aktueller Wert (currentValue), Indexwert ( currentIndex) und das Array selbst (array)
initialValue optionaler Anfangswert, als übergebener Wert previousValue, wenn die Callback-Funktion zum ersten Mal aufgerufen wird. Übergeben Sie also den Startwert (zusätzlichen Bonus) für Operationen wie Akkumulation

reduceRight beginnt am Ende des Arrays

isArray *

Syntax: Array.isArray(value)
Funktion: Wird verwendet, um zu bestimmen, ob der Parameterwert ein Array ist

ES6

find *

ind(fn)`
Funktion: Gibt den qualifizierten ersten Wert zurück Ein Array-Element item

findIndex *

Syntax: [].findIndex(fn)
Funktion: Gibt den 索引

des ersten Array-Elements zurück, das die Bedingungen erfüllt from *

Syntax: [].fill(value[, start, end])
Funktion: Array-ähnliche Objekte und durchquerbare (iterable) Objekte in echte Arrays konvertieren
Häufig verwendet:

const set = new Set(3, 8, 9, 0)
Array.from(set)
Nach dem Login kopieren

Einträge *

Syntax: [].entries()
Funktion: Iterator zurückgeben: Schlüssel-Wert-Paar zurückgeben

[Hinweis] Die Methode Object.entries(obj) gibt den Schlüsselwert der eigenen aufzählbaren Eigenschaft eines bestimmten Objekts zurück. Für ein Array: Seine Anordnung stimmt mit der Reihenfolge überein, die zurückgegeben wird, wenn eine for...in-Schleife zum Durchlaufen des Objekts verwendet wird (der Unterschied besteht darin, dass die for-in-Schleife auch die Eigenschaften in der Prototypenkette aufzählt) [MDN]
und [].entries() ist Array. Methoden auf Prototyp-
Schlüsseln/Werten ähneln

//数组
const arr = ['a', 'b', 'c'];
for(let v of arr.entries()) {
    console.log(v)
}
// [0, 'a'] [1, 'b'] [2, 'c']

//Set
const arr1 = new Set(['a', 'b', 'c']);
for(let v of arr1.entries()) {
    console.log(v)
}
// ['a', 'a'] ['b', 'b'] ['c', 'c']

//Map
const arr2 = new Map();
arr2.set('a', 'a');
arr2.set('b', 'b');
for(let v of arr2.entries()) {
    console.log(v)
}
// ['a', 'a'] ['b', 'b']
Nach dem Login kopieren

Schlüsseln *

Syntax: [].keys()
Funktion: Rückgabe-Iterator: Rückgabeschlüssel (d. h. jedes Array oben Der erste Wert in)

Werte

Syntax: [].values()
Funktion: Rückgabe-Iterator: Rückgabewert (d. h. der zweite Wert in jedem Array oben)

includes *

语法:[].includes(val[, fromIndex])
功能:用于从fromIndex判断数组中是否包含val,可替代ES5中的 indexOf

copyWithin

语法:[].copyWithin(target[, start[, end]])
功能:浅复制数组的一部分(start~end)到同一数组中的另目标位置target,返回改变后的数组,而不修改其大小;start默认为0, end默认为length-1; 改变原数组

of

语法:Array.of()
功能:创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型

Array构造函数 & Array.of() 区别
实例说明

Array.of(7);       // [7] 
Array.of(1, 2, 3); // [1, 2, 3]

Array(7);          // [ , , , , , , ]
Array(1, 2, 3);    // [1, 2, 3]
Nach dem Login kopieren

fill

语法:[].fill(value[, start, end])
功能:用指定的元素填充数组,可用于初始化数组,返回改变后的数组,改变原数组
填充值(value),填充起始位置(start,默认为0),填充结束位置(end,默认为数组length)。

遍历

数组

map/forEach/some/every/filter 见上

for

for...in

遍历所有可枚举属性,常用于遍历对象Object

for...of

遍历所有可迭代iterable的对象

对象【属性】

for...in

循环遍历对象自身的和继承的可枚举属性(不含Symbol属性)【可枚举 - Symbol】

Object.keys(obj)

返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性)【自身可枚举 - Symbol】

Object.getOwnPropertyNames(obj)

返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性)【自身 - Symbol】

Object.getOwnPropertySymbols(obj)

返回一个数组,包含对象自身的所有Symbol属性【自身的Symbol】

Reflect.ownKeys(obj)

返回一个数组,包含对象自身的所有属性,不管是属性名是Symbol或字符串,也不管是否可枚举  【自身所有】

【相关推荐:JavaScript视频教程

Das obige ist der detaillierte Inhalt vonZusammenfassung gängiger API-Methoden und Traversal-Methoden für JavaScript-Arrays (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!