这 === 是否不适用于浮点舍入不准确的 b/c
Does this === not work b/c of floating point rounding inaccuracies?
假设我有这个片段。
var age = prompt('what is your age?');
if (age === 30)
{
alert('your age is 30');
}
当我在提示中输入 30 时,if 语句不会触发。我怀疑这与浮点舍入错误有关,但不确定。很高兴听到你对此的想法。
window.prompt()
返回一个字符串。字符串不等同于数字。使用以下任一方法:
if (age === '30')
if (+age === 30) // Explicit type conversion
if (age == 30) // Implicit type conversion
有关显式转换的说明,请参阅此答案。例如,00030
的输入也可能有效。
相关文章:
- 将事件侦听器添加到文档,而不是签入元素存在,然后添加事件侦听器
- 浮点0.2+0.1舍入误差
- 谷歌材料图表:停止工具提示舍入
- jQuery - 带有一些数字的表格计算出现奇怪的舍入错误
- 如何在不向上舍入的情况下删除尾随小数
- 在javascript中不带舍入的十进制比较
- 如何处理下拉列表的十进制值而不舍入或修剪零
- toFixed(2) 对 “x.525” 的舍入不一致
- 添加用户输入而不舍入(Google Apps 脚本)
- JavaScript:在不影响结果准确性的情况下舍入数字
- 如何使用 javascript 获取带有 2 个小数且不舍入的数字
- 如何使用javascript截断(不舍入)小数点后的特定数字
- 这 === 是否不适用于浮点舍入不准确的 b/c
- 大的 JavaScript ints 不会在没有舍入的情况下转换为 String
- 舍入javascript字符串并显示不带小数的美元格式
- JavaScript舍入不起作用
- 在Javascript中将双精度型转换为整型,不需要舍入
- Javascript乘法不正确,导致不正确的舍入
- Lodash舍入到小数点后1位而不是2位
- 是否存在不舍入的小数数据类型?