我想用函数调用动态地用{“John”:“Dough”}动态替换“placeholder”。用Javascript动态替换JSON属性
这工作:
a = {foo:{bar:{baz:"placeholder"}}};
a.foo.bar.baz = {"John" : "Dough"};
console.log(JSON.stringify(a));
> {"foo":{"bar":{"baz":{"John":"Dough"}}}}
但这并不:
var test = function(key, value) {
a = {foo:{bar:{baz:"placeholder"}}};
a.foo.bar.baz = { key: value};
console.log(JSON.stringify(a));
};
test("John", "Dough");
> {"foo":{"bar":{"baz":{"key":"Dough"}}}}
这也不起作用:
var test = function(key, value) {
a = {foo:{bar:{baz:"placeholder"}}};
a.foo.bar.baz[key] = value;
console.log(JSON.stringify(a));
};
test("John", "Dough");
> {"foo":{"bar":{"baz":"placeholder"}}}
我测试的Node.js的在浏览器中可能不会改变。
有没有这样的事“JSON对象”的Java脚本。有json,这是一个对象的serielized形式,和一个对象。期。说json反对这就像说“蛋糕配方蛋糕”,要么是配方蛋糕,要么是蛋糕。没有之间。 –
@ArunPJohny - 这个问题没有被你称为重复的问题回答。这个问题是问如何替换一个属性。如果你真的看看提供的代码,那么你可以看到OP已经知道如何动态引用使用变量作为键名称的属性。他做到了。将来在标记为重复之前停止。 – Archer
有些SO大师对这些问题真的很不宽容。我想,我清楚地表达了我的问题。无论如何,这是一个伟大的网站。 – rsa