2016-09-14 64 views
0

我的JSON:分配一个值JSON与switch语句

var someObj= { 
    "1234": { 
     "prop1": "prop1value", 
     "prop2": "prop2value", 
     "prop3": [ 
     "key1", 
     "key2" 
     ] 
    } 
} 

我想分配一个新的价值为prop1。

由于我在该对象中有更多的条目,我想用switch语句通过使用适当的case编号(在这种情况下是1234)来完成它。 我去1234:

function funct(id, prop, value) { 
    switch (id) { 
    case 1234: 
     someObj["1234"].prop = value; 
     break; 
    } 

    return(someObj); 
} 
funct(1234, prop1, "just something else") 
} 

因此函数去反对1234和..增加了一个全新的属性与prop1分配"just something else"。我希望它分配valueprop1。我认为这说明someObj["1234"].prop将使它去someOjb["1234"],并选择指定.prop(指对象prop1

如何使它工作?

希望你明白我的意思!

+0

你确定它创建了一个新的属性'prop1'?它应该创建一个名为'.prop'的新属性。 – Barmar

+0

[JSON](https://en.wikipedia.org/wiki/JSON),那里有一个普通的旧Javascript对象。 – Xotic750

回答

0

像这样:

someObj["1234"][prop] = value; 
+0

这有帮助!谢谢大家! – WTob

0

someOjb [ “1234”] [丙],假设丙是场

0

的属性为 “PROP1”,不是.prop的名称。你需要用方括号使用动态属性时:

someObj["1234"][prop] = value;