(.0) JavaScript 中的浮动

问题描述 投票:0回答:1

我正在尝试为一个函数编写代码,在检查该值是否为整数后显示布尔值。当我调用该函数时,请参阅下面我在理想输出中对整数的定义:

到目前为止,我的代码失败了,因为当我希望它为 false 时,它为 validInteger ( 10.0 ) 生成 true 。 JavaScript 正在挣扎,因为 10.0 = 10

期望的输出

validInteger ( '10' ) // should return True
validInteger ( 10 ) // should return True 
validInteger ( '-10' ) // should return False
validInteger ( -10 ) // should return False
validInteger ( 0.0 ) // should return False
validInteger ( 10.0 ) // should return False
validInteger ( -10.0 ) // should return False

我想知道是否有人知道如何获得 validInteger ( 10.0 ) 的错误结果。到目前为止,这是我能够编写的代码:

function validInteger (value) { // value can be a string or a number (integer)
  
  const numberValue = Number(value);
  return Number.isInteger(numberValue) && numberValue >= 0 && String(numberValue) ===     String(value);

}
javascript node.js function floating-point
1个回答
0
投票

10
10.0
在 JS 中是相同的。它是
number
类型的原始值。您无法在 runtume 中区分这些符号。

© www.soinside.com 2019 - 2024. All rights reserved.