📅  最后修改于: 2023-12-03 15:16:18.457000             🧑  作者: Mango
Armstrong号码也被称为自带数字幂的数字或自幂数。它是一个n位数,其每个数字的n次方之和等于该数本身。例如,153是一个Armstrong号码,因为1³+5³+3³=153。
在JavaScript中,我们可以通过以下代码来检查一个数是否为Armstrong号码:
function isArmstrong(number) {
const digits = number.toString().split("").map(Number);
const power = digits.length;
const sum = digits.reduce((acc, digit) => acc + Math.pow(digit, power), 0);
return sum === number;
}
该函数接受一个数字作为参数,并将其转换为字符串,然后拆分为单独的数字。接下来,我们计算数字的长度作为指数,并将其用于计算每个数字的幂,并将这些幂相加得到数字的总和。最后,我们将总和与传递的数字进行比较。如果它们相等,则该数字为Armstrong号码,并返回true;否则,返回false。
测试这个函数:
console.log(isArmstrong(153)); // true
console.log(isArmstrong(370)); // true
console.log(isArmstrong(9474)); // true
console.log(isArmstrong(9475)); // false
上述代码可以将153、370和9474识别为Armstrong号码,并将9475视为非Armstrong号码。
现在,您可以将此函数与其他函数结合使用,以构建更复杂的应用程序,例如提供用户输入并检查相应的Armstrong号码。