我该怎么做?
objPrefix = btn.attr('data-objprefix'); //<button data-objPrefix="foo">
var sendData = {objPrefix : {"bar":"ccccc"}};
我希望输出是
{"foo" : {"bar":"ccccc"}};
反而是
{"objPrefix" : {"bar":"ccccc"}}
最佳答案
当您使用文字符号时,objPrefix
被视为键名本身而不是变量 objPrefix
的值,而是尝试使用 bracket notation根据变量值设置对象的属性名称。所以试试这个方法:
var sendData = {};
sendData[objPrefix] = {"bar":"ccccc"};
实际上你也可以使用 jquery data-api 来获取数据属性的值,即
objPrefix = btn.data('objprefix')
关于javascript - 将变量中的字符串作为 javascript 对象文字中的键传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19966070/