Math.min() 为何比 Math.max() 大?

斟酌以下代码:

var min = Math.min();
var max = Math.max();
console.log(min < max);

根据通例思绪,这段代码应当输出 true,毕竟最小值应当小于最大值。然则当我们运转这段代码时,却奇异的输出了 false

为何会如许呢?

还得去查查 MDN 的相干文档。

The Math.min() function returns the smallest of zero or more numbers.

Math.min 的参数是 0 个或许多个。假如是多个参数很轻易明白,返回参数中最小的。

假如是 0 个参数呢?文档中写到:

If no arguments are given, the result is Infinity.

If at least one of arguments cannot be converted to a number, the
result is NaN.

假如没有参数,则返回 InfinityInfinity 是什么呢?Infinity 是 javascript 中全局对象的一个属性,在浏览器环境中就是 window 对象的一个属性,示意无穷大。

Math.max() 没有通报参数时返回的是 -Infinity

因而 Math.min() 要比 Math.max() 大。

继承浏览:为何 Math.min() 比 Math.max() 大?(续)

    原文作者:justjavac
    原文地址: https://segmentfault.com/a/1190000006933349
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞