Maison > Article > interface Web > Implémenter un tableau de fractions égales en JavaScript
La colonne
Recommandations d'apprentissage gratuites associées : javascript ( vidéo)
Dans ce tutoriel, nous apprendrons comment utiliser la méthode Array.splice()
pour diviser un tableau en parties égales, et parlerons également des différences entre Array.splice()
et Array.slice()
.
Nous pouvons diviser le tableau en deux moitiés en deux étapes :
Utilisez length/2
et Math.ceil()
méthodes pour trouver l'index du milieu d'un tableau
Obtenez les parties également divisées d'un tableau en utilisant l'index du milieu et les Array.splice()
méthodes
La fonction Math.ceil() renvoie le plus petit entier supérieur ou égal à un nombre donné. La méthode
const list = [1, 2, 3, 4, 5, 6]; const middleIndex = Math.ceil(list.length / 2); const firstHalf = list.splice(0, middleIndex); const secondHalf = list.splice(-middleIndex); console.log(firstHalf); // [1, 2, 3] console.log(secondHalf); // [4, 5, 6] console.log(list); // []
Array.splice()
modifie le contenu d'un tableau en supprimant, remplaçant ou ajoutant des éléments. La méthodeArray.slice()
fera d'abord une copie du tableau avant de fonctionner.
list.splice(0, middleIndex)
Supprime le premier élément 0
du tableau à l'index 3
et le renvoie. splice(-middleIndex)
Supprime le dernier élément 3
du tableau et le renvoie. A la fin de ces deux opérations, le tableau d'origine est vide puisque nous avons supprimé tous les éléments du tableau.
Notez également que dans le cas ci-dessus le nombre d'éléments est pair, si le nombre d'éléments est impair il y aura un élément supplémentaire dans la première moitié.
const list = [1, 2, 3, 4, 5]; const middleIndex = Math.ceil(list.length / 2); list.splice(0, middleIndex); // returns [1, 2, 3] list.splice(-middleIndex); // returns [4, 5]
Parfois, nous ne voulons pas changer le tableau d'origine. Cela peut être résolu avec Array.slice() :
const list = [1, 2, 3, 4, 5, 6]; const middleIndex = Math.ceil(list.length / 2); const firstHalf = list.slice().splice(0, middleIndex); const secondHalf = list.slice().splice(-middleIndex); console.log(firstHalf); // [1, 2, 3] console.log(secondHalf); // [4, 5, 6] console.log(list); // [1, 2, 3, 4, 5, 6];<.>On voit que le tableau d'origine reste inchangé car nous avons copié le tableau d'origine en utilisant
avant de supprimer les éléments en utilisant Array.slice()
. Array.slice()
const list = [1, 2, 3, 4, 5, 6, 7, 8, 9]; const threePartIndex = Math.ceil(list.length / 3); const thirdPart = list.splice(-threePartIndex); const secondPart = list.splice(-threePartIndex); const firstPart = list; console.log(firstPart); // [1, 2, 3] console.log(secondPart); // [4, 5, 6] console.log(thirdPart); // [7, 8, 9]
pour extraire la ThirdPart , Il supprime les 3 derniers éléments st.splice(-threePartIndex)
et à ce stade [7、8、9]
ne contient que les 6 premiers éléments list
. [1、2、3、4、5、6]
, qui supprime les 3 derniers éléments du list.splice(-threePartIndex)
restant (c'est-à-dire [4, 5, 6]), et la liste is Contient uniquement les trois premiers éléments list = [1、2、3、4、5、6]
, qui sont [1、2、3]
. firstPart
const list = [1, 2, 3, 4, 5, 6, 7, 8, 9];
Obtenir le premier élément du tableau
list.slice().splice(0, 1) // [1]
Obtenir les 5 premiers éléments du tableau
list.slice().splice(0, 5) // [1, 2, 3, 4, 5]
Récupère tous les éléments après les 5 premiers éléments du tableau
list.slice().splice(5) // 6, 7, 8, 9]
Récupère le dernier élément du tableau
list.slice().splice(-1) // [9]
Récupère les trois derniers éléments du tableau
list.slice().splice(-3) // [7, 8, 9]
Il est impossible de connaître les bugs possibles en temps réel après le déploiement du code. Afin de résoudre ces bugs par la suite, beaucoup de temps a été passé. sur le débogage des journaux, je voudrais vous en recommander un bon, Fundebug, un outil de surveillance des BUG.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!