0
试图写出阿姆斯壮功能。我使用chrome进行调试,发现它在val1上炸弹,当我尝试分配pow的结果时。我尝试了数组[元素]和数组[元素] .value,但它不喜欢。javascript pow参数 - 阿姆斯壮数字
//Armstrong numbers
function armstrong() {
var numberStr = document.getElementById('inputNumber').value;
var numberInt = parseInt(numberStr);
var arrayOfNum = numberStr.split('');
var val1, val2, val3, total = 0;
var displayResult = document.getElementById('displayResult');
for (i = 0; i < arrayOfNum.length; i++) {
arrayOfNum[i] = parseInt(arrayOfNum[i]);
}
if (arrayOfNum.length === 3) {
val1 = Math.pow(arrayOfNum[0], 3);
val2 = Math.pow(arrayOfNum[1], 3);
val3 = Math.pow(arrayOfNum[2], 3);
total = val1 + val2 + val3;
if (total === numberInt) {
//display msg that number is armstrong
displayResult.innerHTML = "Your number " + numberInt + " is an Armstrong Number.";
} else {
//display msg that not armstrong
displayResult.innerHTML = "Your number " + numberInt + " is NOT an Armstrong Number.";
}
} else {
// display msg to enter a 3 digit number
displayResult.innerHTML = "You must enter a 3 digit number.";
}
}
代码。我实现了Muhammad的建议,并将初始值解析为一个整数,即使使用了.value并且元素的类型为number,它仍将其作为字符串存储。 – JReam 2015-04-04 18:45:11