gpt4 book ai didi

javascript - 从数组的字典 JS 获取数据时出现问题

转载 作者:行者123 更新时间:2023-12-01 03:30:42 25 4
gpt4 key购买 nike

我在获取数组中存储的数据时遇到问题。我看不出我的函数问题出在哪里以及为什么返回未定义的元素。

这是我在数组中存储数据的函数:

function getTaskKidData(str) {
var tasks = $('#tasks_data > div');;
var formated_tasks = [];
var formated_kids = [];
formated_homeworks = [];
tasks.each(function(index) {
var task_kids = $(this).find('ul').eq(0).find('li');
var task_homeworks = $(this).find('ul').eq(1).find('li');
if (task_kids.length > 0 && task_homeworks.length > 0) {
task_kids.each(function(index) {
var kid_name = $(this).text().trim();
if (str == "kid"){
var kid = $('#kid_list > li > a[class*="active"]').text().replace(window.location.pathname.split('/')[2],'').trim();
if (kid == kid_name){
formated_kids.push({'name': kid_name});
}
}else{
formated_kids.push({'name': kid_name});
}
});
task_homeworks.each(function(index) {
var homework_name = $(this).find('p').eq(0).text().trim();
var homework_date = $(this).find('p').eq(1).text().trim();
formated_homeworks.push({
'name': homework_name,
'date': homework_date,
});
});
formated_tasks.push({
'kids': task_kids,
'homeworks': task_homeworks,
})
}
});
return formated_tasks;
}

如果我将数据存储为文本,我不明白为什么数组输出中的对象是“li”标签。数组的输出是下一个: enter image description here这是我尝试获取数据的代码:

var tasks = getTaskKidData("kid");
console.log(tasks)
for (let i = 0; i < tasks.length; i++) {
console.log("schedule");
for (let j = 0; j < tasks[i]['kids'].length; j++) {
console.log(tasks[i]['kids'][j]['name']);
}
for (let j = 0; j < tasks[i]['homeworks'].length; j++) {
console.log(tasks[i]['homeworks'][j]['name']);
console.log(tasks[i]['homeworks'][j]['date']);
}
}

这是我运行代码时的输出:

enter image description here

知道问题所在吗?

感谢您的阅读!!

最佳答案

在您的代码中,您有

var task_kids = $(this).find('ul').eq(0).find('li');

然后您记录task_kids。日志输出显示 li 元素,因为这是您选择的。

关于javascript - 从数组的字典 JS 获取数据时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60111607/

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