推送未定义的语法错误 JS
Push Undefined syntax error JS
我需要创建一个程序,要求用户将一个值存储在一个数组中,并继续不断地要求添加值,直到他们没有更多的数字要输入到数组中。之后我必须输出不包含零的数组(允许它们输入零,所以我必须从输出中过滤掉它们)和 return 数组的总和。我的程序当前的问题是 arr.push(x)
当前正试图在函数 arrin 中推送一个未定义的值。我觉得好像有比我目前正在尝试的更好的方法来解决这个问题,所以我很期待改进。
var x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
var y = arrin(x);
var arr = [];
var s;
function arrin(x) {
if(x != NaN){
arr.push(x)
x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
y = arrin(x);
}else{
document.write("<p>"+arr.toString()+"</p>");
s = sum(arr);
doucment.write("<p> The sum of all elements in the array is "+s+"</p>");
}
}
x != NaN
将不起作用。
!isNaN(x)
将检查变量是否为数字。
x != "NaN"
将检查文本是否按字面意思 "NaN"
最后两个都可以。
var arr = [];
var y = arrin(0);
var s;
function arrin(x) {
if (!isNaN(x)) {
if (x != 0) arr.push(x)
x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
y = arrin(x);
} else {
document.write("<p>" + arr.toString() + "</p>");
s = sum();
document.write("<p> The sum of all elements in the array is " + s + "</p>");
}
}
function sum() {
var t = 0;
for (var i = arr.length; i--;) t += parseInt(arr[i]);
return t;
}
我需要创建一个程序,要求用户将一个值存储在一个数组中,并继续不断地要求添加值,直到他们没有更多的数字要输入到数组中。之后我必须输出不包含零的数组(允许它们输入零,所以我必须从输出中过滤掉它们)和 return 数组的总和。我的程序当前的问题是 arr.push(x)
当前正试图在函数 arrin 中推送一个未定义的值。我觉得好像有比我目前正在尝试的更好的方法来解决这个问题,所以我很期待改进。
var x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
var y = arrin(x);
var arr = [];
var s;
function arrin(x) {
if(x != NaN){
arr.push(x)
x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
y = arrin(x);
}else{
document.write("<p>"+arr.toString()+"</p>");
s = sum(arr);
doucment.write("<p> The sum of all elements in the array is "+s+"</p>");
}
}
x != NaN
将不起作用。
!isNaN(x)
将检查变量是否为数字。
x != "NaN"
将检查文本是否按字面意思 "NaN"
最后两个都可以。
var arr = [];
var y = arrin(0);
var s;
function arrin(x) {
if (!isNaN(x)) {
if (x != 0) arr.push(x)
x = parseInt(prompt("Enter a number, to exit enter NaN", "0"), 10);
y = arrin(x);
} else {
document.write("<p>" + arr.toString() + "</p>");
s = sum();
document.write("<p> The sum of all elements in the array is " + s + "</p>");
}
}
function sum() {
var t = 0;
for (var i = arr.length; i--;) t += parseInt(arr[i]);
return t;
}