Obtenir la clé de tableau avec la plus grande valeur en javascript
J'ai un tableau comme
arr[1] = 234;
arr[2] = 345;
...
arr[40] = 126;
Comment puis-je obtenir l'index de l'élément avec la valeur la plus élevée sans renouveler le tableau?
source d'informationauteur Alexa
Vous devez vous connecter pour publier un commentaire.
Vous pouvez appliquer les Mathématiques.max et passer le tableau en tant que ses arguments-
Mais maintenant les Mathématiques.max est en train de faire l'itération, tout comme pourrait le faire.
Quelqu'un a regarder chaque élément dans un tableau non trié...
Avec jQuery, est aussi simple que:
Si le tableau n'est pas commandé vous ne pouvez pas le faire sans l'itération.
Obtenir la clé du tableau avec la valeur la plus élevée en javascript
Essayez ceci:
Vous pouvez utiliser une fonction pour définir la variable. Et de garder trace de max dans cette fonction. Voici un exemple rapide sans vérification de type, les essais, ou de soutien pour la suppression d'une valeur.
Évidemment, c'est plus agréable si vous êtes actuellement en train de mettre des articles comme ceci:
Plutôt que de ceci:
L'inconvénient est son pas naturel et vous oblige à utiliser une fonction pour obtenir des résultats corrects.
Garder le tableau de tri ou de l'utilisation d'un segment de mémoire.
Sinon itérer. Même si vous avez trouvé une astuce pour le faire, il aurait encore besoin de l'itération dessous, alors pourquoi ne pas effectuer une itération?
Si il semble que trop de code, de le mettre dans une autre routine.
Deux solution: pour trier par ordre décroissant et obtenir le premier élément ou:
vous froid optimiser à l'aide de deux variables, une pour la position et d'autres pour le contenu.
Soit vous avez itération quelque part (dans votre code ou en JQuery.chacun()) ou vous pouvez définir quelque chose comme ceci:
et de l'utilisation que
arr.mpush(v)
pour remplir le tableau. Dans ce cas, le tableau aura maxIndex propriété.Est une vieille question, mais voici un de mes simple émulation de script PHP
max()
fait en javascript:Cette valeur de retour de la dernière touche au tableau ou
0
si rien trouvé.Maby quelqu'un les aide.
Vous pouvez l'utiliser comme: