如何检查“floored”值和另一个值的有效数字是否相同?

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

假设某个值在显示时处于“下限”(以任意数字下限)(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())
吗?或者还有其他更好的方法(假设任何语言)

javascript python math numbers
1个回答
0
投票

您可以使用正则表达式

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));

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