如何做到这一点?假设用户输入一个整数14865,我怎么能切断整数并按照完全相同的顺序将它放入一个数组:[1,4,8,6,5]。我已经尝试使用%10方法,但它将它返回到前面。
答案 0 :(得分:3)
一种方法是将整数转换为字符串,然后使用字符串.split()
方法创建包含每个数字的数组。此时,数组的每个元素都是一个字符串,因此遍历数组以将每个数组元素从字符串转换为数字(或只使用.map()
):
var x = 14865,
a = x.toString().split("").map(function(v) { return +v; });
// a is now [1, 4, 8, 6, 5]
请注意,如果用户输入了整数,您可以跳过.toString()
部分,因为它已经是一个字符串,除非您已将其显式转换为数字。
P.S。您提到“%10方法”返回“返回前面”的值 - 您没有显示如何实现该方法,但如果您当前的代码一次提取一个数字并将它们添加到数组的末尾“回到前面“为什么不通过使用.unshift()
method在数组的开头处插入数字来避免这个问题?
答案 1 :(得分:1)
通过获取每个数字来制作数组之后,就像你说过的那样,只需反转数组
var digitArray //your calculated array
digitArray = digitArray.reverse()