62 votes

Comment fonctionne le += (plus égal) ?

Je suis un peu confus avec le signe +=. Comment fonctionne-t-il ?

  1. 1 += 2 // égale ?

  2. et ceci

    var data = [1,2,3,4,5];
    var sum = 0;
    data.forEach(function(value) {
        sum += value; 
    });
    sum = ?

90voto

lawnsea Points 2226

1 += 2 est une erreur de syntaxe (le côté gauche doit être une variable).

x += y est un raccourci pour x = x + y .

32voto

Paulpro Points 54844

1) 1 += 2 // égale ?

C'est syntaxiquement invalide. Le côté gauche doit être une variable. Par exemple.

var mynum = 1;
mynum += 2;
// now mynum is 3.

mynum += 2; est juste une forme courte pour mynum = mynum + 2;

2)

var data = [1,2,3,4,5];
var sum = 0;
data.forEach(function(value) {
    sum += value; 
});

La somme est maintenant de 15. En déroulant le forEach, nous avons :

var sum = 0;
sum += 1; // sum is 1
sum += 2; // sum is 3
sum += 3; // sum is 6
sum += 4; // sum is 10
sum += 5; // sum is 15

19voto

Tudor Constantin Points 11393

C'est juste une forme courte pour :

sum = sum + value;

13voto

Paul Points 7124

+= en JavaScript (ainsi que dans de nombreux autres langages) ajoute le côté droit à la variable du côté gauche, en stockant le résultat dans cette variable. Votre exemple de 1 +=2 n'a donc pas de sens. Voici un exemple :

var x = 5;
x += 4; // x now equals 9, same as writing x = x + 4;
x -= 3; // x now equals 6, same as writing x = x - 3;
x *= 2; // x now equals 12, same as writing x = x * 2;
x /= 3; // x now equals 4, same as writing x = x / 3;

Dans votre exemple spécifique, la boucle additionne les nombres dans le tableau. data .

5voto

f0x Points 3962

+= L'opérateur est utilisé pour concaténer des chaînes de caractères ou additionner des nombres.

Il incrémentera votre variable de somme avec le montant qui lui est associé.

var sum = 0;
var valueAdded = 5; 

sum += valueAdded;

somme = 5

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X