JavaScript数据未附加到数组
我有一个值的对象,我试图用对象中的键和值填充两个数组 我的目标:JavaScript数据未附加到数组,javascript,arrays,object,Javascript,Arrays,Object,我有一个值的对象,我试图用对象中的键和值填充两个数组 我的目标: obj = {19455746: 7476, 22489710: 473} 尝试附加数据的循环: var sensorNameArray = []; var sensorDataArray = []; for(var i in obj) { sensorNameArray.push[i]; sensorDataArray.push[obj[i]]; } 目前,这两个阵列的打印结果为空。我的预期结果如下: sensorN
obj = {19455746: 7476, 22489710: 473}
尝试附加数据的循环:
var sensorNameArray = [];
var sensorDataArray = [];
for(var i in obj) {
sensorNameArray.push[i];
sensorDataArray.push[obj[i]];
}
目前,这两个阵列的打印结果为空。我的预期结果如下:
sensorNameArray = [19455746, 22489710];
sensorDataArray = [7476, 473];
push是一个函数,不是数组,它使用括号而不是括号:
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
push是一个函数,不是数组,它使用括号而不是括号:
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
不同的语法(在我看来更优雅):
不同的语法(在我看来更优雅):
您正在使用方括号[] 但是array.push()是一个函数,所以使用圆括号代替 请尝试以下代码
obj = {19455746: 7476, 22489710: 473};
var sensorNameArray = [];
var sensorDataArray = [];
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
这是工作和测试。您正在使用方括号[] 但是array.push()是一个函数,所以使用圆括号代替 请尝试以下代码
obj = {19455746: 7476, 22489710: 473};
var sensorNameArray = [];
var sensorDataArray = [];
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
这正在运行并经过测试。语法
push[]
不会调用函数,它会尝试访问函数对象的属性。它不会抛出错误,因为在Javascript中,函数是对象,并且该语法在技术上是有效的
因此,只需将语法修改为
push()
,即可实际调用函数。语法push[]
不会调用函数,它会尝试访问函数对象的属性。它不会抛出错误,因为在Javascript中,函数是对象,并且该语法在技术上是有效的
因此,只需将语法修改为
push()
,即可实际调用函数。处理JSON的最佳方法是使用lodash或下划线
_.key()和0.value是满足您需求的函数
例如:
若您想按自己的方式进行,那个么可以使用括号作为Javascript的内置推送函数,将元素插入数组中
正确答案是:
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
处理JSON的最佳方法是使用lodash或下划线 _.key()和0.value是满足您需求的函数 例如: 若您想按自己的方式进行,那个么可以使用括号作为Javascript的内置推送函数,将元素插入数组中 正确答案是:
for(var i in obj) {
sensorNameArray.push(i);
sensorDataArray.push(obj[i]);
}
你的语法不正确,应该是
push()
,而不是push[]
哈哈,谢谢,不知道我怎么没发现。现在一切都好了。@MikaelLennholm如果你想添加这条评论作为回答,我会接受。好的,我会接受!你的语法不正确,应该是push()
,而不是push[]
哈哈,谢谢,不知道我怎么没发现。现在一切都好了。@MikaelLennholm如果你想添加这条评论作为回答,我会接受。好的,我会接受!这不是JSONYa,我只是建议使用其他方法来访问对象,所以将来可能会有所帮助。还指定了对当前代码的更正。这不是JSONYa,我只是建议使用其他方法来访问对象,所以将来可能会有所帮助。还规定了当前代码的更正。