如何获得数字中的最后一位数?

时间:2016-02-03 09:38:17

标签: javascript

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

即。我有一个名为"No. Siri Pendaftaran : " + ($F{ref_no}.length() > 10) ? $F{ref_no} : $F{ref_no}.substring(0,20)+ "..." 的变量,它是27,我想要7。

(数字永远不会超过99。)

1 个答案:

答案 0 :(得分:11)

如果您需要号码,请使用% 10以数字方式隔离该地点:

var onesOnly = number % 10;

如果您需要字符串,可以将数字转换为字符串,然后使用.substr(-1)获取最后一位数字:

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

注意:两种方法都不可靠,数量非常大(出于不同的原因)。如果您的号码永远不会超过99,那么这不是您将遇到的问题,但如果其他人使用相同的大数字技术,则值得注意:

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

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

当然,当你遇到科学记数问题时,你已经处理过那么不精确(第一期)的数字,这是次要问题。