我想将一个整数,比如12345
,转换为类似于[1,2,3,4,5]
的数组。
我已经尝试了下面的代码,但有没有更好的方法?
var n = 12345;
var arr = n.toString().split('');
for (i = 0; i < arr.length; i++) arr[i] = +arr[i] | 0;
我想将一个整数,比如12345
,转换为类似于[1,2,3,4,5]
的数组。
我已经尝试了下面的代码,但有没有更好的方法?
var n = 12345;
var arr = n.toString().split('');
for (i = 0; i < arr.length; i++) arr[i] = +arr[i] | 0;
function toArr1(n) {
"use strict";
var sum = 0;
n = Array.from(String(n), Number);
/*even if the type of (n) was a number it will be treated as a string and will
convert to an Array*/
for (i = 0; i < n.length; i += 1) {
sum += n[i];
}
return sum;
}
function toArr2(n) {
var sum = 0;
n = n.toString().split('').map(Number);
for (i = 0; i < n.length; i += 1) {
sum += n[i];
}
return sum;
}
sum
未定义导致了ReferenceError
。 - guriskolet val = 1458;
let numbers = String(val);
console.log("First response => ",numbers);
let fromNumberToArray = [...val.toString()].map(Number);
console.log("Second response => ",fromNumberToArray)
这样就可以了。
let n = 1234;
console.log(n.toString().split(''));
.map(Number)
或.map(parseInt)
,但这不会像您的位运算那样将NaN
转换为0
。 - Bergi|0
? - nnnnnn.map(Number)
。 - Nick Orlando