假设某个值在显示时处于“下限”(以任意数字下限)(7.785->7.7、110.6->110)。让这个下限值称为
flooredTarget
。假设我有另一个名为 toCheck
的数字变量。如何检查 flooredTarget
和 toCheck
的有效数字是否相等?
注意:第一个参数是
flooredTarget
。
checkSignificant(7.7, 7.785); // true as 7.7 is common
checkSignificant(7.785, 7.8); // false as toCheck doesn't contain 7.785
我应该检查一下是否
toCheck.toString().beginsWith(flooredTarget.toString())
吗?或者还有其他更好的方法(假设任何语言)
您可以使用正则表达式
function checkSignificant(flooredTarget, toCheck) {
const [digits] = flooredTarget.toString().match(/(?<=\.)\d+/)
return new RegExp(`(?<=\\.)${digits}`).test(toCheck.toString())
}
console.log(checkSignificant(7.7, 7.785));
console.log(checkSignificant(7.785, 7.8));