Method: 1. Using toString() and for loop
const numberToArray = (number) => {
let str = number.toString();
let result = [];
for (let i = 0; i < str.length; i++) {
result.push(Number(str[i]));
}
return result;
}
console.log(numberToArray(12345)); // Output: [1, 2, 3, 4, 5]
Method: 2.Using toString(), split(), and map()
const numberToArray = (number) => {
return number.toString().split('').map(Number);
}
console.log(numberToArray(123456)); // Output: [1, 2, 3, 4, 5, 6]
Method: 3. Using Math.floor() and a while loop
const numberToArray = (number) => {
let result = [];
while (number > 0) {
result.unshift(number % 10); // Get the last digit
number = Math.floor(number / 10); // Remove the last digit
}
return result;
}
console.log(numberToArray(123456)); // Output: [1, 2, 3, 4, 5, 6]
Method: 4. Using Array.from()
const numberToArray = (number) => {
return Array.from(number.toString(), Number);
}
console.log(numberToArray(123456)); // Output: [1, 2, 3, 4, 5, 6]
Method: 5. Using reduce()
const numberToArray = (number) => {
return number
.toString()
.split('')
.reduce((acc, digit) => {
acc.push(Number(digit));
return acc;
}, []);
}
console.log("Number to array: ", numberToArray(123456));
// Output: Number to array: [1, 2, 3, 4, 5, 6]
Method: 6. Using Recursion
function numberToArray(number) {
if (number === 0) return [];
return [...numberToArray(Math.floor(number / 10)), number % 10];
}
let result = numberToArray(123456)
console.log("Result: ", result); // Output: Result: [ 1, 2, 3, 4, 5, 6 ]
Top comments (0)