JS Learning Notes - - the Underlying Implementation of Array Method

(') σ ゚∀゚) σ..:** C'est bien. 2022-07-23 23:41:53 阅读数:313

jslearningnotesunderlyingimplementation

push – Ajouter à la queue

Renvoie la valeur de longueur du tableau

 Array.prototype.myPush = function(val) {

if (arguments.length && arguments.length > 1) {

for (let i = 0; i < arguments.length; i++) {

this[this.length] = arguments[i]
}
} else {

this[this.length] = val
}
return this.length
}

pop Suppression de la queue

Un seul ,Et renvoie l'élément supprimé

 // Suppression de la queue
Array.prototype.myPop = function() {

// Supprimer le dernier élément Et renvoie l'élément actuellement supprimé
console.log('11==',this)
const val=this[this.length-1]
this.length--
return val
}

unshift Head ADD

Renvoie la longueur du tableau

 Array.prototype.myUnshift = function(val) {

const len = arguments.length
const len1 = this.length
if (len1) {

// La longueur du tableau est supérieure à0, Tous les éléments en arrière 
if (len) {

for (let i = len1 - 1; i >= 0; i--) {

// const temp=this[i]
this[i + len] = this[i]
}
for (let i = 0; i < len; i++) {

this[i] = arguments[i]
}
}
} else {

// La longueur du tableau est égale à0
if (len) {

for (let i = 0; i < len; i++) {

this[i] = arguments[i]
}
}
}
return this.length
}

shift Tête enlevée

Aucun paramètre, Renvoie la valeur de l'élément actuellement supprimé

 Array.prototype.myShift=function(){

for (var i = 0; i < this.length-1; i++) {

this[i]=this[i+1]
}
const val=this[0]
this.length--
return val
}

splice Supprimer Remplacer l'élément Insérer un élément

Renvoie l'élément supprimé Premier paramètre Coordonnées de l'élément de départ ,Deuxième élément Nombre d'éléments supprimés, Troisième à troisième N- Oui. , Éléments remplacés ou ajoutés

Mise à jour continue
Copyright:Cet article est[(') σ ゚∀゚) σ..:** C'est bien.]Établi,Veuillez apporter le lien original pour réimprimer,remercier。 https://fra.fheadline.com/2022/204/202207232338215962.html