【发布时间】:2012-08-09 20:10:12
【问题描述】:
在一个简单的脚本中,它遍历了一些表单字段,获取用户输入并将其存储到我遇到问题的数组中。
当我这样做时它会起作用:
var q1A = parseFloat($('#q1-1').val());
if(isNaN(q1A)) {
var q1A = 0;
}
parameter.push(' ');
answers.push(q1A);
但是现在我添加了另一个数组,在这种情况下,它应该简单地存储相同的 q1A 变量。但不知何故,我最终得到一个“未捕获的类型错误”,说明变量未定义!新的代码块是:
var q1A = parseFloat($('#q1-1').val());
if(isNaN(q1A)) {
var q1A = 0;
}
input.push(q1A);
parameter.push(' ');
answers.push(q1A);
我在控制台中记录了变量,它工作得很好,它已经设置并有一个值。知道为什么它说它是未定义的吗? 'answers' 数组可以很好地存储值。
提前致谢!
编辑:
当然,我定义了变量。我只是没有发布那部分代码...
var groups = new Array();
var questions = new Array();
var input = new Array();
var parameter = new Array();
var answers = new Array();
var amounts = new Array();
【问题讨论】:
-
input不是数组,不能推送到任何变量,只能推送到之前定义的数组。 -
我定义了那些。立即将其添加到帖子中。
-
对我来说非常好用:jsfiddle.net/mP6NT/1。如果我们无法复制错误,我们将很难为您提供帮助。请创建您自己的 jsfiddle.net 演示来显示此问题。
-
好的,谢谢。我会尝试在那里重现错误并回复给你们!
-
为什么要在 if 块中重新声明变量 q1A?
标签: javascript jquery arrays