当值为空时,如何将键/值对添加到Javascript对象?

时间:2016-06-06 20:57:37

标签: javascript jquery

我需要为我的Javascript对象添加一个新键,obj。只要我有一个值来使用密钥,使用下面的方法就可以正常工作。

下面的方法插入实际字符""进入价值位置。我想添加新项目" key3",但我希望它现在在obj中显示为" key3":{}。

这是我的代码:



    //1.adding key/value pair
    var obj ={
        "key1":{},
        "key2":{}
    };
    obj["key3"] = "test";

    //obj now looks like:
    obj ={
        "key1":{},
        "key2":{},
        "key3": test
    };

    //2.adding key/value pair with empty value
    var obj ={
        "key1":{},
        "key2":{}
    };
    obj["key3"] = "";

    //obj now looks like:
    obj ={
        "key1":{},
        "key2":{},
        "key3": ""
    };

    //but I want obj to look like:
    var obj ={
        "key1":{},
        "key2":{},
        "key3":{}
    };




2 个答案:

答案 0 :(得分:4)

分配对象而不是字符串。

math.fsum

答案 1 :(得分:1)

ES6的功能性非变异方法看起来像这样:

const initialObject = {
    key1:{},
    key2:{}
};

const keysToAdd = {
  key3: {}
};

const updatedObject = Object.assign({}, initialObject, keysToAdd);

console.log(updatedObject);

JS Bin Example