Was ist der Rückgabewert, nachdem pop() push() unshift() shift() ein Array in Javascript bearbeitet?
女神的闺蜜爱上我
女神的闺蜜爱上我 2017-06-12 09:25:04
0
2
1517

Kürzlich habe ich „The Definitive Guide to JavaScript (6th Edition)“ gelesen, übersetzt vom Taobao-Team. Im Kapitel über Arrays finden Sie eine Einführung in einige Methoden von JS-Arrays.
pop() push() behandelt das Array als Stapel und löscht dann Array-Elemente und fügt sie am Ende des Arrays hinzu.
unshift()shift() behandelt das Array ebenfalls als Stapel, löscht jedoch Elemente am Kopf des Arrays und fügt sie hinzu.
Alle vier Methoden aktualisieren die Länge des Arrays.
Aber was den genannten Rückgabewert betrifft, bin ich etwas verwirrt, nachdem ich das gegebene Beispiel gesehen habe.
Beispielcode aus dem Buch:

var statck=[]; //stack:[]
stack.push(1,2); //stack:[1,2]  返回2
stack.pop();   //stack:[1]      返回2
stack.push(3);  //stack:[1,3]   返回2
stack.pop();    //stack:[1]     返回3
stack.push([4,5]); //stack:[1,[4,5]]   返回2
stack.pop();  //stack:[1]       返回[4,5]
stack.pop(); // stack:[]    返回1

Der Rückgabewert sollte der aktuell gelöschte oder eingefügte Wert sein
Der letzte in der zweiten Zeile eingefügte Wert ist 2, also ist der Rückgabewert 2.
Warum gibt es dann in der 4. Codezeile oben einen Rückgabewert von 2? ? Ist es nicht der Wert 3? Denn der eingefügte Wert ist 3.

stack.push(3); //stack:[1,3] 返回2

Dann versteht Zeile 6 auch den folgenden Rückgabewert nicht:

stack.push([4,5]); //stack:[1,[4,5]]   返回2

Warum ist der zurückgegebene Wert 2 statt 5?

女神的闺蜜爱上我
女神的闺蜜爱上我

Antworte allen(2)
洪涛

Array.prototype.pop()
Return value
The removed element from the array; undefined if the array is empty.

Array.prototype.push()
Return value
The new length property of the object upon which the method was called.

Array.prototype.unshift()
Return value
The new length property of the object upon which the method was called.

Array.prototype.shift()
Return value
The removed element from the array; undefined if the array is empty.

即:push()unshift() 会返回新数组的长度,而 pop()shift() 会返回被移除的元素(当数组为空时返回 undefined

来源:MDN

迷茫

1,pusn 返回的是数组的长度。
2,pop,返回的是删除的元素。
3,unshift, 返回的是数组的长度。
4,shift 返回的是删除的元素。

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!