gpt4 book ai didi

javascript - 无法从推送数组中检索对象属性

转载 作者:行者123 更新时间:2023-11-28 18:47:56 26 4
gpt4 key购买 nike

我在脚本中遇到问题如下:

我的代码

function data (classno) {
switch (classno) {
case 0:
return [
{'name' : 'SomeName1', 'age' : 'SomeAge1'},
{'name' : 'SomeName2', 'age' : 'SomeAge2'}
]
break;
case 2:
return [
{'name' : 'SomeName3', 'age' : 'SomeAge3'},
{'name' : 'SomeName4', 'age' : 'SomeAge4'}
]
}
}
function add (name, age, classno) {
var a, b;
a = {'name' : name, 'age' : age};
b = data(classno);
b.push(a);
}
function list (classno) {
var dt = data(classno),
body = document.body;
for (var x=0;x < dt.length;x++) {
var div = document.createElement('div');
var div1 = document.createElement('div');
var tx_name = document.createTextNode(dt[x].name);
var tx_age = document.createTextNode(dt[x].age);
div1.appendChild(tx_age);
div.appendChild(tx_name);
div.appendChild(div1);
body.appendChild(div)
}
}

add('ABC', 12, 0); //Adding User to list...
list(0); //Listing all user in Class number '0'...

但是,我添加的新用户没有显示在列出的用户中。

还有其他方法吗?

这是我的 JSFiddle我试过了。

最佳答案

data 总是返回一个新数组,没有存储该数组的变量,因此您可以更新该数组并获取更新后的数据。

检查此更新 fiddle了解如何在不创建变量数组的情况下做到这一点,但随后您将无法通过传递 classno 来调用 list 方法。

但是,请检查此 fiddle了解如何使用变量数组来完成此操作,并且仍然通过传递 classno

来使用列表方法
var obj = {
0: [
{'name' : 'SomeName1', 'age' : 'SomeAge1'},
{'name' : 'SomeName2', 'age' : 'SomeAge2'}
],
2: [
{'name' : 'SomeName3', 'age' : 'SomeAge3'},
{'name' : 'SomeName4', 'age' : 'SomeAge4'}
]

}

function data (classno) {
return obj[ classno ];
}
function add (name, age, classno) {
var a, b;
a = {'name' : name, 'age' : age};
b = data(classno);
b.push(a);
}
function list (classno) {
var dt = data(classno),
body = document.body;
for (var x=0;x < dt.length;x++) {
var div = document.createElement('div');
var div1 = document.createElement('div');
var tx_name = document.createTextNode(dt[x].name);
var tx_age = document.createTextNode(dt[x].age);
div1.appendChild(tx_age);
div.appendChild(tx_name);
div.appendChild(div1);
body.appendChild(div)
}
}

add('ABC', 12, 0); //Adding User to list...
list(0); //Listing all user in Class number '0'...

关于javascript - 无法从推送数组中检索对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34990741/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com