How to extract last(end) digit of the Number value using jquery. because i have to check the last digit of number is 0 or 5. so how to get last digit after decimal point
<you can just convert to string
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
Try this one:
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);
Updates with ES6/ES2015:
We can use tagged template in such case as numbers are not iterable. So, we need to convert the number to a string representation of it. Then just spread it and get the last number popped.
Just in one line.
const getLastDigit = num => +(num + '').slice(-1);
console.log(getLastDigit(12345)) // Expect 5
There is a JS function .charAt()
you can use that to find the last digit
var num = 23.56
var str = num.toString();
var lastDigit = str.charAt(str.length-1);
alert(lastDigit);
This worked for us:
var sampleNumber = 123456789,
lastDigit = sampleNumber % 10;
console.log('The last digit of ', sampleNumber, ' is ', lastDigit);
Works for decimals:
var sampleNumber = 12345678.89,
lastDigit = Number.isInteger(sampleNumber) ? sampleNumber % 10
: sampleNumber.toString().slice(-1);
console.log('The last digit of ', sampleNumber, ' is ', lastDigit);
Click on Run code snippet to verify.
If you want the digit in the hundredths place, then you can do the following:
test * 100 % 10
The problem with convert to string and getting the last digit is that it does not give the hundredths place value for whole numbers.