📌  相关文章
📜  在不使用内置函数的情况下反转 javascript 中的数字 - Javascript (1)

📅  最后修改于: 2023-12-03 15:37:39.480000             🧑  作者: Mango

在不使用内置函数的情况下反转javascript中的数字 - Javascript

反转一个数字的顺序,可以通过多种方法,反转后的数字可以用于许多情况,如算法、密码学、字符串操作、动画等等。这里将介绍一种在不使用内置函数的情况下反转JavaScript中的数字方法。

方法
1. 转换成字符串反转

方法一是将数字转换成字符串,然后使用split()将其分割成一个字符数组,最后反转并使用join()转回数字。

function reverseNum(num) {
    let reversedStr = num.toString().split('').reverse().join('');
    return parseInt(reversedStr);
}

此代码将数字转换成字符串,使用split()将其转换成一个字符数组,使用reverse()反转该数组,然后使用join()将其转换回字符串,最后使用parseInt()将其转换回数字。

2. 余数和除数

方法二是使用余数和除数来反转数字,将数字num的最后一位取出来,然后将其作为反转后数字result的最高位,接着将num除以10,继续取出最后一位,随之将数字追加到result的最低位。重复该过程直到num变成0,此时返回result即可。

function reverseNum(num) {
    let result = 0;
    while (num !== 0) {
        result = result * 10 + num % 10;
        num = Math.floor(num / 10);
    }
    return result;
}
3. 位运算

方法三是使用位运算符将数字的二进制表示反转,转换回数字。

function reverseNum(num) {
    let result = 0;
    while (num !== 0) {
        result = (result << 1) | (num & 1);
        num = num >>> 1;
    }
    return result;
}

此代码将数字的二进制表示进行反转,最后转换回数字。它使用了位运算符左移<<和右移>>>,同时使用了按位或运算|和按位与运算&

结论

这里我们提供了三种在不使用内置函数的情况下反转JavaScript中的数字方法。这些方法有各自的优缺点,适用于不同的应用场景,具体选择哪种方法取决于特定问题的要求和实际情况。