Bonsoir,
Je voudrais calculer la somme d'un champ qui se présente de la sorte:
ex: +5+10+20+5+5+5+3+2.
Merci beaucoup
Bonsoir,
Je voudrais calculer la somme d'un champ qui se présente de la sorte:
ex: +5+10+20+5+5+5+3+2.
Merci beaucoup
Bonsoir,
il existe eval, et tout le bien que l'on en pense !
Code : Sélectionner tout - Visualiser dans une fenêtre à part alert(eval(+5+10+20+5+5+5+3+2.));
Les joies du CSS | Réponses sur forum | Simple comme JS | Essais libres autour de l'API G$$gle Maps
✂ ---------------------------------------------
developpez.net c'est aussi :
✔ Les meilleurs cours et tutoriels pour apprendre le CSS
✔ Les meilleurs cours et tutoriels pour apprendre le (X)HTML
✔ Les meilleurs cours et tutoriels pour apprendre le JavaScript
Bonsoir,
Je savais que c’était très simple, mais un grand merci, car j'ai oublié ça.![]()
Mais au cas où on ait envie d'éviter eval en s'infligeant quelques caractères de plus... on pourrait avoir ça ^^
...quitte à définir bien évidemment la fonction en question, par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var somme = "+5+10+20+5+5+5+3+2."; somme = somme.split("+").arraySum();
Mais c'est vraiment de la mauvaise volonté pour ne pas utiliser eval (
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Array.prototype.arraySum = function() { for (var s = 0, i = 0, iMax = this.length; i < iMax; ++i) { s += +this[i]; } return s; }![]()
), alors que le contexte est évidemment plus sain ici que lorsqu'on se lance dans la réécriture de morceaux de page entiers...
![]()
Bonjour RomainVALERI,
j'avoue ne pas avoir testé ton codemais this[i] me laisse perplexe. La tableau généré par le split ne doit contenir que des caractères donc this[i] est un caractère... Par conséquent, je me demande s'il ne faut pas un parseInt() ou un parseFloat() sur le this[i] ? A moins que le + ne fasse la conversion en nombre ?
Oui, le + utilisé en préfixe devient un opérateur de transtypage en NumberEnvoyé par Auteur
Code : Sélectionner tout - Visualiser dans une fenêtre à part alert(typeof +'5')
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Partager