How to get Last digit of number

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.


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.


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