Javascript 不使用反转功能反转数字

Javascript 不使用反转功能反转数字,javascript,reverse,Javascript,Reverse,我需要在JavaScript中反转一个数字,但我不知道为什么下面的代码会进入无限循环 var num=1234; var reverse=0; while(num!=0) { reverse=reverse*10; reverse=reverse+(num%10); num=num/10; } console.log(reverse); 我希望输出为4321,但实际输出是一个无限循环操作num=num/10需要一个整数除法(否则num将需要很长时间才能变为0

我需要在JavaScript中反转一个数字,但我不知道为什么下面的代码会进入无限循环

var num=1234;
var reverse=0;
while(num!=0) {
  reverse=reverse*10;            
  reverse=reverse+(num%10);
  num=num/10;
}
console.log(reverse);

我希望输出为4321,但实际输出是一个无限循环

操作
num=num/10
需要一个整数除法(否则
num
将需要很长时间才能变为0)。用于剥离任何部分零件:

num=Math.trunc(num/10);
相反:

var num=1234;
var反向=0;
while(num!==0){
反向=反向*10;
反向=反向+(数值%10);
num=Math.trunc(num/10);
}
控制台日志(反向)更改

num=num/10;

实现这一点的方法有很多,请选择其他方法:

var num=1234
,rev=0
做{
版本=(版本*10)+(数量%10)
}while(num=Math.trunc(num/10))

console.log(rev)
您可以简单地使用Math.trunc(x)从除法结果中提取整数。或者您也可以使用以下方法

另一种方法

var num = 1234;
var reverse = 0;
var final = 0;
while(num !== 0){
    reverse = num%10;
    num = parseInt(num/10);
    console.log(reverse);
    if(final! = '0'){
        final = final.toString().concat(reverse);
    }else {
        final = reverse;
    }
}
console.log(final);
或者你也可以做这样的事情

var num = 1234;
var reverse = num.toString().length;
var res = num.toString().charAt(1);
var final = "";

for(var i = reverse; i >= 0; i--){
    console.log(num.toString().charAt(i));
    final = final.concat(num.toString().charAt(i))
}
console.log(final);

因为1234/10=123.4
var num = 1234;
var reverse = num.toString().length;
var res = num.toString().charAt(1);
var final = "";

for(var i = reverse; i >= 0; i--){
    console.log(num.toString().charAt(i));
    final = final.concat(num.toString().charAt(i))
}
console.log(final);