0
votes

Comment JavaScript calcule cette expression mathématique

Pourquoi la sortie de cette expression est-elle de 20?

J'ai essayé différents calculs mais cela conduit toujours à la sortie de 24.

Pourriez-vous s'il vous plaît m'expliquer comment Javascript calcule cette expression?

Merci.

let A = 2;
let B = 4;
let result = B + B * A + 8;

console.log(result);

Sortie: 20


4 commentaires

4 + 4 * 2 + 8 = 4 + (4 * 2) + 8 = 4 + 8 + 8 = 20 < / code> - Je ne suis pas sûr de ce que vous attendiez. Ce ne sont que des mathématiques de base ...


Si vous utilisez une simple calculatrice, en effectuant une opération à la fois, vous faites ((B + B) * A) + 8 . Lorsque vous effectuez ce calcul en une seule fois , c'est B + (B * A) + 8 . Cela ne se limite pas à JavaScript, ni même à la programmation; voir en.wikipedia.org/wiki/Order_of_operations .


Bonjour Scott, vous pouvez consulter ici l'ordre de fonctionnement développeur. mozilla.org/en-US/docs/Web/JavaScript/Reference/…


Peut-être que vous vouliez faire let result = (B + B) * A + 8 , jetez un œil à ce que jon a commenté, l'ordre des opérations compte vraiment dans la programmation


3 Réponses :


1
votes

Il évalue comme ceci:

résultat = 4 + 4 * 2 + 8

En raison du point avant le calcul de la ligne, une parenthèse est placée autour de la multiplication.

Comme ceci: 4 + (4 * 2) + 8

Ce qui équivaut à 4 + 8 + 8 , et vous ne pouvez pas dire que c'est 20.

Peut-être que votre calculatrice n'a pas fait de point avant le calcul de la ligne.

J'espère que je pourrais vous aider.


0 commentaires

0
votes

J'espère que cela vous aidera à comprendre

let A = 2;
let B = 4;
let result = (B + B) * A + 8;

console.log(result);	//Outputs 24

A = 2;
B = 4;
result = B + (B * A) + 8;

console.log(result);	//Outputs 20


0 commentaires

1
votes

Il suit la règle de PEMDAS (qui signifie parathèse, exposants, multiplication et division, addition et soustraction).

Cela signifie simplement que la multiplication et la division ont un ordre "supérieur" à l'addition ou à la soustraction. Ce qui signifie que la multiplication et la division auront lieu avant toute addition ou soustraction.


1 commentaires

Dans l'exemple, l'opération B * A se produira en premier car elle a priorité sur les opérations d'addition dans l'équation.