我如何只得到数字的最后一位数字

How do I get just the last digit in a number?

本文关键字:数字 最后一位      更新时间:2023-09-26

如何隔离数字的最后一位数字?

即我有一个名为 number 的变量,它是 27,我想要 7。

(这个数字永远不会超过99。

如果你想要一个数字,请使用% 10以数字方式隔离该位置:

var onesOnly = number % 10;

如果你想要一个字符串,你可以将数字转换为字符串,并使用.substr(-1)来获取最后一个数字:

var lastDigit = String(number).substr(-1);

注意:对于非常大的数字,这两种方法都不可靠(出于不同的原因(。如果你的数字永远不会超过99,这不是一个问题,但如果其他人对大数字使用相同的技术,似乎值得注意:

数字方法可能会与JavaScript的数字是IEEE-754双精度浮点数("双精度"(的事实相冲突,即使它们是整数。双精度可以容纳的最高可靠整数值是9007199254740991,之后我们用完了有效位,即使在整数级别也开始变得不精确:9007199254740993 % 10是 2,而不是 3,因为双精度不能9007199254740993精确地保存值。

文本方法与科学记数法相冲突:使用科学记数法将非常大的数字转换为字符串。例如,5823548469823234783234852转换为"5.823548469823234e+24"。因此,String(5823548469823234783234852).substr(-1)给了我们4而不是2

当然,当你遇到科学记数法问题时,你已经在处理如此不精确的数字(第一个问题(,这是一个次要的问题。