Javascript/jQuery - “无法调用未定义的方法'push'”,而它是定义的
Javascript/jQuery - "Cannot call method 'push' of undefined" while it IS defined
在一个简单的脚本中,它遍历一些表单字段,获取用户输入并将其存储到数组中,我遇到了一个问题。
当我这样做时它有效:
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);
我在控制台中记录了变量,它工作得很好,它已设置并具有值。知道为什么它说它是未定义的吗?"答案"数组可以很好地存储值。
提前感谢!
编辑:
当然,我定义了变量。我只是没有发布那部分代码...
var groups = new Array();
var questions = new Array();
var input = new Array();
var parameter = new Array();
var answers = new Array();
var amounts = new Array();
由于可以将
未定义的变量推送到数组中而不会出错,因此问题一定是当您尝试对其调用push()
时未定义input
。
此问题的常见原因是在另一个地方声明了变量input
,并且从未在意外位置初始化。
首先,您必须定义为数组。
var input=[];
然后尝试推送元素。
input.push(element);
相关文章:
- 用嵌套函数和默认函数定义函数
- Dojo不解析自定义小部件的模板html中的小部件声明性
- Javascript/jQuery - “无法调用未定义的方法'push'”,而它是定义的
- 反应路由器:无法读取未定义的属性“push”
- 在 Javascript 中重新组织对象数组:“未捕获的类型错误:无法读取未定义的属性'push'”
- 为什么我的 push() 方法不断在我的数组中插入一个“未定义”的元素
- angularJS) 类型错误:无法读取未定义的属性“push”
- 一个数组在“array.push”一些字符串之后附加了未定义.这正常吗
- 未捕获的类型错误:不能调用方法'push'未定义的(d3强制布局)
- 套接字.io抛出" TypeError: Cannot read property 'push'未定义的
- 错误:不能读取property 'push'未定义的React Native
- 不能读取property 'push'组合数组时未定义的
- 未捕获类型错误:不能调用方法'push'在jquery-1.5.1.min.js中未定义
- 未捕获的类型错误:不能调用方法'push'的定义
- 未捕获类型错误:Cannot read property 'push'的定义
- 使用数组.Push输出未定义
- Angular的$scope将push()定义为未定义
- 尝试插入数组时未定义push
- Ionic Push Android推送通知返回“未定义”;消息
- 不能读取property 'push'未定义的Javascript