Почему не происходит умножения?

Почему в первом случае не происходит умножения 86400 на 1000? За счет этого выводится большое число...

console.log(90000 * 1000 / 86400 * 1000); //1041666.6666666667
console.log(90000 * 1000 / 86400000);
//1.0416666666666667


Ответы (1 шт):

Автор решения: Михаил В

Порядок математических действий в общем-то не связан с JS, но суть в том, что по этому самому порядку сначала происходит умножение, потом деление, потом умножение. Умножение и деление - равнозначные действия.

Т.е. Ваш пример раскладывается так
1) x = 90000 * 1000;
2) y = x / 86400
3) z = y * 1000;
4) получается то, что получается.

Поменять порядок можно введением дополнительных скобок, Вам нужно вот так:

console.log(90000 * 1000 / (86400 * 1000));

хотя зачем сначала умножать на 1000, а потом делить на 1000, не понятно

→ Ссылка