如何从函数向对象分配值

时间:2019-03-08 15:18:07

标签: javascript function object access

我想从函数中创建的对象中输出数据。

function schichten(){

    let xyz = {};
    let xhr_schichten = new XMLHttpRequest();
    xhr_schichten.open ('GET', 'request.php', true);
    xhr_schichten.onreadystatechange = function () {
        if ((xhr_schichten.status === 200) && (xhr_schichten.readyState === 4)) {
            let xschichten = JSON.parse(xhr_schichten.responseText);
            for (var key in xschichten) {
                xyz["schicht" + xschichten[key]["id"]] = {abteilung:xschichten[key]["abteilung"],bedarf:xschichten[key]["bedarf"]};
            }
        }
    }
    xhr_schichten.send();
    return xyz;
}

如果先执行let abc = schichten();然后执行console.log(typeof(abc));,我将得到object

如果我写console.log(abc);,我将从函数中获取对象:

{}​
    schicht18: Object { abteilung: "XYZABC", bedarf: "5" }​
    schicht19: Object { abteilung: "ABCXYZ", bedarf: "13" }​

但是如何访问该对象?

如果我尝试:console.log(abc.schicht18.abteilung);console.log(abc["schicht18"]["abteilung"]);
输出为TypeError: abc.schicht18 is undefined

0 个答案:

没有答案