11
votes

Comment faire JQuery chaque nombre

Ceci est mon code:

$.each(3, function(n) {
    alert(n);
});


2 commentaires

Pourquoi avez-vous besoin d'utiliser chacun ? Impossible d'utiliser un pendant ou un pour ? Afaik Chaque fonctionne avec des tableaux.


J'ai un soupçon furtif que vous essayez de l'utiliser dans un contexte plus important ... vous devriez peut-être expliquer davantage ce que vous essayez de faire, car à la valeur nominale, vous ne devriez pas utiliser jQuery pour cela, car ce n'est pas vraiment Ce que JQuery est pour. S'il n'y en a vraiment plus que cela, utilisez une norme pour la boucle, décrite dans les réponses ci-dessous.


3 Réponses :


1
votes

vous ne pouvez pas.
$. Chaque ne peut que itération des tableaux ou des objets. Vous recherchez le pour boucle: xxx


4 commentaires

Toute autre méthode JQuery peut faire cela ??


Non. JQuery n'est pas un appareil magique qui élimine le besoin de JavaScript.


Pourquoi il doit être jQuery? Utilisez un JS uni pour une tâche aussi simple. C'est comme du téléchargement d'un plugin 20K pour faire une alerte.


@Slaks Commentaire non productif pour suggérer qu'il demande de la magie. Certaines libs ont une fonction de boucle JQuery ne fonctionne pas aussi simple que cela.



23
votes

chaque code> doit fonctionner sur un objet. Essayez de créer un tableau de longueur 3, par exemple

for (var n = 0; n < 3; ++ n)
   alert(n);


6 commentaires

+1 Bonne réponse, @KennyTM, je me souviens que vous avez posté une belle image sur l'utilisation de JQuery pour ajouter deux numéros qui me font rire que je ne trouve nulle part. Pourriez-vous s'il vous plaît partager le lien à nouveau parce qu'il semble que l'Ops insiste sur l'utilisation de jQuery au lieu d'une boucle simple.


@John: Non. Le premier paramètre du rappel est l'index et non la valeur. En outre, vous voulez dire non défini , pas 0 .


@Slaks, oh ouais mec, hilarant. Merci. Je vais le signet pour une référence future :-)


@Darin: Vous pouvez aller à meta et rechercher jQuery . C'est dans La première réponse de la première question .


@KennyTM, merci, c'est vraiment Freakin. Je pense que cette question mérite également une place sur le quotidien WTF.


C'est intelligent, mais ne fais pas cela, c'est moins efficace sans raison.



3
votes

réponse tardive, mais une autre option serait de prototyper le numéro avec une méthode qui appellerait un rappel à laquelle plusieurs fois.

(3).loop(i => alert(i))


4 commentaires

Par curiosité, pourquoi avez-vous besoin du ceci + 0 ?


@sdolan - C'est un moyen de forcer la valeur de retour de type à un numéro au lieu d'un objet . Pas nécessaire pour la fonction, mais juste un moyen rapide de renvoyer la valeur de l'objet numéro.


Merci, c'est ce que j'avais supposé .. Jamais jamais vu ça auparavant.


Edité pour signaler l'avertissement de MDN, mais je pense que c'est cool de pouvoir faire (3) .Loop (i => alerte (i)) pour des déclarations simples.