如何验证 JavaScript 中的整数变量并引发非整数值错误
确定 JavaScript 变量是否表示整数可能至关重要。有几种方法可以有效地执行此检查。
选项 1:使用 isNaN 和解析 Cast
问题中提供的示例尝试使用 NaN(data)检查整数。然而,这种方法并不可靠。相反,请考虑以下函数:
function isInt(value) { return !isNaN(value) && parseInt(Number(value)) == value && !isNaN(parseInt(value, 10)); }
此函数通过将潜在整数解析为数字并将其与原始值进行比较来确保彻底检查。
选项 2:使用按位运算
简单解析和检查
function isInt(value) { var x = parseFloat(value); return !isNaN(value) && (x | 0) === x; }
此方法将输入解析为浮点数,并检查结果是否等于原始值,确认整数表示。
短路以增强性能
function isInt(value) { if (isNaN(value)) { return false; } var x = parseFloat(value); return (x | 0) === x; }
这通过首先验证输入是否不是数字来短路检查。
性能注意事项
基准测试表明,短路电路解决方案为该整数检查提供了最佳性能。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3