Je suis en train de lire un livre sur Javascript, j'ai une partie déroutante concernant les opérateurs de cession et de concaténation. S'il vous plaît voir ci-dessous le codeJavascript concaténer + et assigner + =?
var msg = 'JavaScript'; msg += ' Code'; //Concatenate
var intA = 8; intA -= 4; //Subtract and assign
var intB = 24; intB *= intA; //Multiply and assign
var str = 'Add & assign string: ' + msg;
str += '<br>Multiply & assign: ' + initB;
Je reçois que l'opérateur +=
, lorsqu'ils traitent avec des chaînes de concaténer les deux opérandes et lorsqu'ils traitent avec des chiffres qu'ils ajoutent les valeurs des opérandes et réaffecter à la valeur calculée à la première opérande.
Je reçois aussi que str
est initialisé comme 'Add & assign string ' + msg;
et ensuite ajouté avec une autre chaîne et une variable.
Mais pourquoi ne pas simplement écrire ci-dessous dans l'exemple de la variable str
?
var str = 'Add & assign string ' + msg + '<br>Multiply & assign: ' + initB;
que je comprends mal une différence subtile entre + et + =, ou sont-ils la même chose dans ce cas d'utilisation?
Ils sont exactement les mêmes. – Blackhole
'foo + = bar' est juste du sucre syntaxique pour' foo = foo + bar' – Jecoms
Non, vous ne vous méprenez pas. Votre code produit exactement la même chose que l'exemple de code. Je pense qu'ils essayaient juste d'illustrer différents moyens d'atteindre le même résultat. –