如何使用jQuery提取数字值的最后一个(末尾)数字。因为我需要检查数字的最后一位是否为0或5。所以如何获取小数点后的最后一位数字
例如,var test = 2354.55
。现在如何使用jQuery获取这个数值中的5。
我尝试过substr,但它只适用于字符串,不适用于数字格式。
如果我使用var test = "2354.55";
,则可以工作,但如果我使用var test = 2354.55
,则不行。
如何使用jQuery提取数字值的最后一个(末尾)数字。因为我需要检查数字的最后一位是否为0或5。所以如何获取小数点后的最后一位数字
例如,var test = 2354.55
。现在如何使用jQuery获取这个数值中的5。
我尝试过substr,但它只适用于字符串,不适用于数字格式。
如果我使用var test = "2354.55";
,则可以工作,但如果我使用var test = 2354.55
,则不行。
这对我们起作用:
var sampleNumber = 123456789,
lastDigit = sampleNumber % 10;
console.log('The last digit of ', sampleNumber, ' is ', lastDigit);
适用于十进制数:
var sampleNumber = 12345678.89,
lastDigit = Number.isInteger(sampleNumber) ? sampleNumber % 10
: sampleNumber.toString().slice(-1);
console.log('The last digit of ', sampleNumber, ' is ', lastDigit);
点击“运行代码片段”以验证。
试试这个:
var test = 2354.55;
var lastone = +test.toString().split('').pop();
console.log("lastone-->", lastone, "<--typeof", typeof lastone);
// with es6 tagged template and es6 spread
let getLastDigit = (str, num)=>{
return num.toString();
};
let test2 = 2354.55;
let lastone2 = +[...getLastDigit`${test2}`].pop();
console.log("lastone2-->", lastone2, "<--typeof", typeof lastone2);
ES6/ES2015 的更新:
在数字不可迭代的情况下,我们可以使用带标签的模板。因此,我们需要将数字转换为其字符串表示形式,然后展开并获取最后一个数字弹出。
你只需要将其转换为字符串
var toText = test.toString(); //convert to string
var lastChar = toText.slice(-1); //gets last character
var lastDigit = +(lastChar); //convert last character to number
console.log(lastDigit); //5
这里是另一个使用.slice()
的示例:
var test = 2354.55;
var lastDigit = test.toString().slice(-1);
//OR
//var lastDigit = (test + '').slice(-1);
alert(lastDigit);
123405
,我们想要最后两位数字,它将返回5
而不是05
,因为在转换为数字时删除了0。 - Muhammad Uzair只需一行代码。
const getLastDigit = num => +(num + '').slice(-1);
console.log(getLastDigit(12345)) // Expect 5
有一个JS函数.charAt()
,你可以使用它来找到最后一个数字。
var num = 23.56
var str = num.toString();
var lastDigit = str.charAt(str.length-1);
alert(lastDigit);
如果你想要百分位数字,可以按照以下步骤进行:
test * 100 % 10
Math.floor(test * 100 % 10)
。 - yastoString()
方法将数字转换为字符串,而charAt()
方法可以给你返回特定位置的字符。
var str = 3232.43;
lastnum = str.toString().charAt( str.length - 1 );
alert( lastnum );
test + ''
将返回数字的字符串表示形式。 - yas