Alors pourquoi exactement Javascript (et d'autres langues) offrent tant de façons différentes de faire la même chose? Eh bien, pour une chose, certaines de ces alternatives sont plus courtes que d'autres et impliquent donc moins de frappe. L'utilisation de + = permet facilement d'ajouter n'importe quel nombre et pas un seul à une variable sans avoir à saisir deux fois le nom de la variable.
Cela n'explique toujours pas pourquoi i ++ et ++ i existent car les deux ne peuvent être utilisés que pour en ajouter un et les deux ont la même longueur. La raison des deux alternatives est que celles-ci ne sont pas vraiment destinées à être utilisées comme des déclarations autonomes mais sont vraiment conçu pour pouvoir être incorporé dans des instructions plus complexes où vous mettez à jour plus d'une variable dans celle déclaration.déclarations où vous mettez à jour plus d'une variable dans la même instruction.
Cette instruction met à jour les valeurs des deux variables i et j dans la même instruction. Le fait est que tandis que ++ i et i ++ font la même chose en ce qui concerne la mise à jour de i, ils font des choses différentes en ce qui concerne la mise à jour d'autres variables. L'instruction ci-dessus peut être écrite sous la forme de deux instructions distinctes comme celle-ci:
Notez que les combiner ensemble signifie que nous avons huit caractères au lieu de 13. Bien sûr, la version plus longue est beaucoup plus claire lorsqu'il s'agit de déterminer quelle valeur j aura.
Cela signifie, bien sûr, que j a maintenant une valeur différente de celle qu'il avait dans le premier exemple. La position du ++ avant ou après le nom de la variable contrôle si la variable est incrémentée avant ou après son utilisation dans l'instruction dans laquelle elle est utilisée.
Donc, lorsque vous l'utilisez séparément comme une seule déclaration, cela ne fait aucune différence que vous le placiez avant ou après le nom de la variable (à l'exception d'une différence de vitesse microscopique que personne ne remarquer). Ce n'est qu'une fois que vous le combinez avec une autre instruction qu'il fait une différence dans la valeur qui est attribuée à un autre variable ou des variables.