En js, Number.MAX_VALUE représente la valeur maximale pouvant être représentée. Si elle dépasse cette valeur, Infinity apparaîtra, mais mon calcul ci-dessous est difficile à comprendre
(Number.MAX_VALUE+123)==Number.MAX_VALUE //true why?
(Number.MAX_VALUE+Number.MAX_VALUE)==Number.MAX_VALUE //false why?
console.log(5.3e-324) //5e-324 why?
Qui comprend pourquoi cela se produit ? Pouvez-vous l'expliquer ?
Parce que 123 est trop petit pour changer l'expression à chiffres élevés
Parce que Number.MAX_VALUE est suffisamment grand pour changer l'expression des chiffres élevés
5.3e-324 de .3 est trop petit
Résumé : js a souvent du mal à garantir l'exactitude des calculs en virgule flottante, tels que 0,1 + 0,2 != 0,3 // vrai
Cent millions plus un, après arrondi, cela fait toujours cent millions, ce qui est presque la même vérité. Ce n'est pas si précis
应该只是一种数值的表示吧,如果减号与数字隔开是无法计算的
par Mistalis de stackoverflow
quelque chose à propos de Number.MAX_VALUE
说白了就是浮点数精度问题!