我正在尝试使用 do while 循环将输入输入到数组中,直到用户输入空白或 0,然后尝试将该数组中的所有元素添加在一起,但它以字符串形式返回它们。我曾尝试parseInt()在多个地方使用,但它通常会使代码根本不起作用。document.getElementById('while').addEventListener('click', stats);document.getElementById('while').addEventListener('click', reduction);var input_array = [];var value = 0;function stats() { do { var number = prompt('Enter a Number'); var array = input_array.push(number); document.getElementById('out2').innerHTML = "[" + input_array + "]"; } while (value != number);}function array_sum(total, num) { return total + num;}function reduction(item) { document.getElementById('out3').innerHTML = input_array.reduce(array_sum);}
1 回答
达令说
TA贡献1821条经验 获得超6个赞
如果您只是parseInt在将值推送到数组之前,您将在数组中获得数字,并且一切正常:
let input_array = [];
let value = 0
function stats() {
do {
var number = prompt('Enter a Number');
var array = input_array.push(parseInt(number)); // <-- parse here
} while (value != number);
}
stats() // show the prompt etc
function array_sum(total, num) {
return total + num
}
console.log(input_array.reduce(array_sum))
我只发布了没有 html 的 js 部分,只是为了给你一个它按预期工作的例子。
添加回答
举报
0/150
提交
取消