You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript代码中-Infinity(负无穷)的含义是什么?

为什么求最大值的函数要初始化result为-Infinity?

先明确:-Infinity是JavaScript里的特殊值,代表负无穷——它比任何实数(不管是正的、负的还是0)都要小。

这个函数的逻辑是什么?

函数会遍历所有传入的数字,逐个和result比较:只要当前数字比result大,就把result更新成这个数字,最后返回最终的最大值。

用-Infinity初始化的核心原因

如果把result初始化成-Infinity,第一个传入的数字不管是什么,肯定比它大——哪怕你传的是-1000这种极小的负数,-1000 > -Infinity也是成立的,这样就能顺利把第一个数字赋值给result,后续的比较才能正常推进。

举个实际例子,传入参数[-3, 1, -8]:

  1. 初始result = -Infinity
  2. 第一个数-3 > -Infinity,result更新为-3
  3. 第二个数1 > -3,result更新为1
  4. 第三个数-8不大于1,result保持1
  5. 最后返回1,结果正确。

为啥用Infinity(正无穷)不行?

Infinity代表正无穷,比任何实数都大。如果初始result = Infinity,那所有传入的数字都比它小,循环里的number > result永远是false,result会一直保持Infinity,最后返回的就是这个错误值,自然得不到正确的最大值。

内容的提问来源于stack exchange,提问作者thiebo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 00:30:54