Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/10/2011, 22h24   #1
Candidat au titre de Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : février 2006
Messages : 85
Points : 13
Points : 13
Envoyer un message via Skype™ à agencep
Par défaut Calculer la somme d'un champ un peu spécifique

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
agencep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2011, 22h41   #2
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 944
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 944
Points : 4 776
Points : 4 776
Bonsoir,
il existe eval, et tout le bien que l'on en pense !
Code :
alert(eval(+5+10+20+5+5+5+3+2.));
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2011, 22h58   #3
Candidat au titre de Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : février 2006
Messages : 85
Points : 13
Points : 13
Envoyer un message via Skype™ à agencep
Bonsoir,

Je savais que c’était très simple, mais un grand merci, car j'ai oublié ça.
agencep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 15h12   #4
Expert Confirmé Sénior
 
Avatar de RomainVALERI
 
Homme Romain VALERI
POOête
Inscription : avril 2008
Messages : 2 574
Détails du profil
Informations personnelles :
Nom : Homme Romain VALERI
Âge : 35
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : POOête

Informations forums :
Inscription : avril 2008
Messages : 2 574
Points : 4 077
Points : 4 077
Mais au cas où on ait envie d'éviter eval en s'infligeant quelques caractères de plus... on pourrait avoir ça ^^
Code :
1
2
var somme = "+5+10+20+5+5+5+3+2.";
somme = somme.split("+").arraySum();
...quitte à définir bien évidemment la fonction en question, par exemple :
Code :
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;
}
Mais c'est vraiment de la mauvaise volonté pour ne pas utiliser eval ( ), alors que le contexte est évidemment plus sain ici que lorsqu'on se lance dans la réécriture de morceaux de page entiers...
__________________

...pour les linguistes et les curieux >>> générateur de phrases aléatoires

__________________
RomainVALERI est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 15h29   #5
Expert Confirmé Sénior
 
Avatar de Auteur
 
Inscription : avril 2004
Messages : 4 795
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 4 795
Points : 5 119
Points : 5 119
Citation:
Envoyé par RomainVALERI Voir le message
Code :
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;
}
Bonjour RomainVALERI,

j'avoue ne pas avoir testé ton code mais 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 ?
Auteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 15h39   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 789
Points : 35 789
Citation:
Envoyé par Auteur
A moins que le + ne fasse la conversion en nombre ?
Oui, le + utilisé en préfixe devient un opérateur de transtypage en Number

__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 15h44   #7
Expert Confirmé Sénior
 
Avatar de Auteur
 
Inscription : avril 2004
Messages : 4 795
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 4 795
Points : 5 119
Points : 5 119
Citation:
Envoyé par Bovino Voir le message
Oui, le + utilisé en préfixe devient un opérateur de transtypage en Number

ok autant pour moi
Auteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 15h49   #8
Expert Confirmé Sénior
 
Avatar de RomainVALERI
 
Homme Romain VALERI
POOête
Inscription : avril 2008
Messages : 2 574
Détails du profil
Informations personnelles :
Nom : Homme Romain VALERI
Âge : 35
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : POOête

Informations forums :
Inscription : avril 2008
Messages : 2 574
Points : 4 077
Points : 4 077
Par défaut franchement HS...

Citation:
Envoyé par Auteur Voir le message
ok autant pour moi
Au temps pour toi (je sais, cette graphie est franchement contre-intuitive, j'ai longtemps fait l'erreur aussi... )
__________________

...pour les linguistes et les curieux >>> générateur de phrases aléatoires

__________________
RomainVALERI est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 13/10/2011, 15h56   #9
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 789
Points : 35 789
Citation:
Envoyé par RomainVALERI
Au temps pour toi (je sais, cette graphie est franchement contre-intuitive, j'ai longtemps fait l'erreur aussi... )
Bah non... cette expression vient du monde de la musique lorsqu'un des musiciens est en décalage, il s'excuse donc, à juste titre, d'avoir un temps de décalage
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 20h17   #10
Expert Confirmé Sénior
 
Avatar de Auteur
 
Inscription : avril 2004
Messages : 4 795
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 4 795
Points : 5 119
Points : 5 119
Citation:
Envoyé par RomainVALERI Voir le message
Au temps pour toi (je sais, cette graphie est franchement contre-intuitive, j'ai longtemps fait l'erreur aussi... )
J'ai hésité entre les deux graphies au moment d'écrire mon message
Auteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 08h04   #11
Responsable JavaScript & AJAX

 
Avatar de vermine
 
Inscription : mars 2008
Messages : 2 690
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2008
Messages : 2 690
Points : 5 760
Points : 5 760
Ah. On m'avais dit que c'était lié aux militaires lorsqu'ils se trompaient sur le "pas". Ce qui reste "musical".

Autant c'est pour la notion de quantité ou d'égalité.

Citation:
- J'aimerais trois bières, s'il vous plait.
- J'en aimerais autant !

-------------

- J'en ai marre de la politique belge.
- Pas autant que moi...
__________________
Elen Poukram - Isegoria - Sandawe
vermine est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h53.


 
 
 
 
Partenaires

Hébergement Web