javascript - jQuery 读取数据对象并等待 $.each 完成

标签 javascript jquery

这是我的数据对象

{
    "teachers":{
        "0":{
            "info":{
                "id":"1",
                "age":"22",
                "driverlicense":"yes"
            }
        },
        "1":{
            "info":{
                "id":"2",
                "age":"51",
                "driverlicense":"yes"
            }
        },
        "2":{
            "info":{
                "id":"1",
                "age":"25",
                "driverlicense":"no"
            }
        }
    }
}

我尝试读取的是 info 对象,并从那里获取信息。

我的代码

$.each(data.teachers, function(item) {
    if(item.info.age < '25'){
        // stores in array
        yTeachers[item.info.id] = item.info.age;
    }
});

但它给了我 undefined 回来。

如果 $.each 完成,是否可以读取数组 teachers?有时当我运行另一个功能时它仍在运行。也许使用像 promise 这样的东西?

最佳答案

这应该适用于将 ages > 25 作为对象存储在 yTeachers 上。

var json = {
    "teachers": {
        "0": {
            "info": {
                "id": "1",
                "age": "22",
                "driverlicense": "yes"
            }
        },
        "1": {
            "info": {
                "id": "2",
                "age": "51",
                "driverlicense": "yes"
            }
        },
        "2": {
            "info": {
                "id": "1",
                "age": "25",
                "driverlicense": "no"
            }
        }
    }
};

var yTeachers = [];
$.each(json.teachers, function(index,item) {
    var id = item.info.id;
    var age = item.info.age;

    if(age < 25){
        // push it in array
        yTeachers.push({id:age});
    }
});

console.log(yTeachers);

关于javascript - jQuery 读取数据对象并等待 $.each 完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40491200/

相关文章:

javascript - 单击按钮时隐藏和显示列表

javascript - Angular - 使用 createEmbeddedView 设置上下文

javascript - PHP 和 Ajax 在回调和返回数组中使用 foreach 循环

javascript - 如何使用 Canvas 在单页中绘制三个三 Angular 形?

JavaScript 从 IndexOf 创建子字符串不起作用

javascript - jQuery : How can showint text and hide then showing another?

javascript - 隐藏表格内容/剪切angular js,Html中的内容

jquery - 使用 jQuery 清除浏览器缓存

javascript - 灯箱 'next' 功能仍然显示已通过显示 :none; 隐藏的元素 (li)

jquery - 悬停在第三级 li 上时,在导航栏中突出显示第二级 li