我只想随机点击某个按钮,然后当我点击Sum按钮时,它会显示点击按钮值结果的总和,我需要这个代码用java脚本。
<!DOCTYPE html>
<html>
<head>
<script>
var mynum = new Array(6);
var i = 0;
unction buttonClicked(obj) {
if (i < mynum.length)
mynum[i++] = obj.value;
else alert("Array limit reached");
}
function sum() {
sumOfArray = 0;
for (j = 0; j < i; j++)
sumOfArray += parseInt(mynum[j++]);
alert("Sum = " + sumOfArray);
}
</script>
</head>
<body>
<p id="demo">Result</p>
button type="button" onclick="buttonClicked(2)">1</button>
<button type="button" onclick="buttonClicked(3)">2</button>
<button type="button" onclick="buttonClicked(3)">4</button>
<button type="button" onclick="buttonClicked(3)">8</button>
<button type="button" onclick="sum()">Sum</button>
</body>
</html>
答案 0 :(得分:2)
这一行:
unction buttonClicked(obj) {
应该是:
function buttonClicked(obj) {
当您将值发送给函数时,而不是包含该值的对象,这个:
mynum[i++] = obj.value;
应该是:
mynum[i++] = obj;
由于数组中有数字,因此不应解析它们。这样:
sumOfArray += parseInt(mynum[j++]);
应该是:
sumOfArray += mynum[j++];
旁注:当您使用parseInt
时,您应该将base指定为第二个参数,否则它将使用base 8而不是10来解析以零开头的数字。
您可能希望向与按钮显示的功能相对应的函数发送值,因此:
button type="button" onclick="buttonClicked(2)">1</button>
<button type="button" onclick="buttonClicked(3)">2</button>
<button type="button" onclick="buttonClicked(3)">4</button>
<button type="button" onclick="buttonClicked(3)">8</button>
应该是:
<button onclick="buttonClicked(1)">1</button>
<button onclick="buttonClicked(2)">2</button>
<button onclick="buttonClicked(4)">4</button>
<button onclick="buttonClicked(8)">8</button>