繁体   English   中英

使用基本方法将数字拆分为 javascript 中的单个数字

[英]Split a number to individual digits in javascript using basic methods

 var count = 0; var arr = []; function Split(number) { if (Math.floor(number / 10) > 0) { for (var count = 0; count < number.toString().length; count++) arr[count] = number % 10; number = Math.floor(number / 10); } return arr; } document.write(Split(2345))

它返回 5,5,5,5 而我预计结果是 2,3,4,5 请告诉我哪里出了问题。 谢谢!

你的错误在这里:

for (var count = 0; count < number.toString().length; count++)
  arr[count] = number % 10;
number = Math.floor(number / 10);

只有第一个语句包含在 for 循环中,第二个语句仅在 for 循环结束后运行。 您需要在两个语句周围加上大括号,以便在每次迭代时都运行。

for (var count = 0; count < number.toString().length; count++) {
  arr[count] = number % 10;
  number = Math.floor(number / 10);
}

但是您仍然会得到错误的结果,因为您重置了每次迭代的计数限制。 在开始时设置一次。

 var count = 0; var arr = []; function Split(number) { if (Math.floor(number / 10) > 0) { for (var count = 0, countLen = number.toString().length; count < countLen; count++) { arr[count] = number % 10; number = Math.floor(number / 10); } } return arr; } document.write(Split(2345));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM