JavaScript - 调用函数后对象没有返回更改,如何?

时间:2017-07-21 10:07:38

标签: javascript function object scope

有一个JavaScript函数,我们称之为“primary”,它包含另一个函数,将其命名为“secondary”。

逻辑是primary获取一个对象,将该对象传递给secondary,然后secondary将另一个键/值添加到给定对象中,最后primary返回该对象。

function primary(objA) {
    function secondary(obj, key, value) {
        obj[key] = value;
    }
    let key = 'newkey';
    let value = 'newvalue';
    secondary(objA, key, value);
    return objA;
}

令人惊讶的是,objA已更改。

{
    key: "value",
    newkey: "newvalue"
}

我的问题是,如果不返回修改后的对象,辅助函数如何更改obj!?

是因为次要是在初级范围内吗?我需要一个完整的解释。

0 个答案:

没有答案