猿问

未评估值。

我有一个不寻常的问题,无法确定为什么会这样。我已经创建了一个对象,并从循环中更新了值。该循环完成后,我尝试访问一个未定义的值。我认为这可以通过向我展示代码来最好地证明。谁能帮助我了解这里的事吗?


function loadCounts() {


    var counts = {

        enroll: {},

        term: {},

        change: {}

    };


    var forms = [

        "enroll/pending",

        "enroll/approved",

        "term/pending",

        "term/approved",

        "change/pending",

        "change/approved",

    ];


    $.each(forms, function( index, value ) {


        if (!(value.split("/")[0] in counts)) {

            counts[value.split("/")[0]] = {};

        }


        $.ajax({

            url: apiURL+'/online/payroll/admin/dashboard/counts/'+value,

            headers: { 'Authorization': 'Bearer ' + sessionStorage.getItem('apiToken') },

            crossDomain: true,

            method: 'GET',

            dataType: 'json',

            success: function(response) {

                counts[value.split("/")[0]][value.split("/")[1]] = response.count;

            },

            error: function (XMLHttpRequest) {

                console.log("error", XMLHttpRequest)

            }

        });

    });


    console.log('count object:', counts)

    console.log('enroll object:', counts.enroll)

    console.log('pending count:', counts.enroll.pending)

}


loadCounts();

结果在控制台中:

12345678_0001
浏览 140回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答