Top.Mail.Ru
Ответы

Почему infinity - infinity = NaN? где здесь хорошый математик

Infinity - все значения, выходящие за рамки представления чисел с плавающей точкой.

По дате
По рейтингу
Аватар пользователя
Новичок

Бесконечность - не число, а идея. В математике с бесконечностью вообще нельзя выполнять арифметические операции. Все верно.

lim (n³) - lim (n²)
→∞ →∞

Не равно нулю )

console.log( 1e1000**3 ) // Infinity
console.log( 1e1000**2 ) // Infinity
// Бесконечность можно получать разными способами...

console.log( 1e1000**3 - 1e1000**2 ) // NaN

Аватар пользователя
Просветленный

Есть стандарт описывающий механику.
https://tc39.es/ecma262/#sec-ecmascript-language-types-number-type

Часть неопределяемых операций возвращают NaN часть бесконечность а некоторые 0

Аватар пользователя
Просветленный

Потому что когда-то в прошлом "хорошые математики" собрались и приняли стандарт, в котором определили, что infinity - infinity = NaN. Вероятно, решили они так потому, что конкретный результат такой операции не может быть определён.