Quelle est la valeur de retour après que pop() push() unshift() shift() opère sur un tableau en Javascript ?
女神的闺蜜爱上我
女神的闺蜜爱上我 2017-06-12 09:25:04
0
2
1563

Récemment, je lisais "The Definitive Guide to JavaScript (6th Edition)", traduit par l'équipe Taobao. Voir le chapitre sur les tableaux pour présenter quelques méthodes des tableaux JS.
pop() push() traite le tableau comme une pile, puis supprime et ajoute des éléments du tableau à la fin du tableau.
unshift() shift() traite également le tableau comme une pile, mais il supprime et ajoute des éléments en tête du tableau.
Les quatre méthodes mettront à jour la longueur du tableau.
Mais concernant la valeur de retour mentionnée, je suis un peu confus après avoir vu l'exemple donné.
Exemple de code du livre :

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

La valeur de retour doit être la valeur actuellement supprimée ou insérée
La dernière valeur insérée dans la deuxième ligne est 2, donc la valeur de retour est 2.
Alors pourquoi y a-t-il une valeur de retour de 2 dans la 4ème ligne de code ci-dessus ? N'est-ce pas la valeur 3 ? Parce que la valeur insérée est 3.

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

Ensuite, la ligne 6 ne comprend pas non plus la valeur de retour suivante :

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

Pourquoi la valeur renvoyée est-elle 2 au lieu de 5 ?

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

répondre à tous(2)
洪涛

Array.prototype.pop()
Valeur de retour
L'élément supprimé du tableau ; indéfini si le tableau est vide.

Array.prototype.push()
Valeur de retour
La nouvelle propriété de longueur de l'objet sur lequel la méthode a été appelée.

Array.prototype.unshift()
Valeur de retour
La nouvelle propriété de longueur de l'objet sur lequel la méthode a été appelée.

Array.prototype.shift()
Valeur de retour
L'élément supprimé du tableau ; indéfini si le tableau est vide.

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

来源:MDN

迷茫

1, pusn renvoie la longueur du tableau.
2, pop, renvoie l'élément supprimé.
3, unshift, renvoie la longueur du tableau.
4, shift renvoie l'élément supprimé.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal