javascript - 将变量中的字符串作为 javascript 对象文字中的键传递

标签 javascript jquery json

我该怎么做?

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/

相关文章:

javascript - jquery 仅显示 1 个事件元素

javascript - chrome 主机环境是否使用全局构造函数实例化全局对象,例如对象、函数

json - 如何在 Go 中解码 JSON,它将多个元素作为类型数组返回,将单个元素作为类型返回

jquery - 是否有一个内置方法来选择最近的 n 个 sibling

jquery - 为我解释一下 bootstrap-alert.js?

javascript - JavaScript 中的 JSON 格式问题

php - JSON 到 HTML 表

javascript - 最好将数组存储在本地存储或许多变量中?

javascript - Jquery获取列表元素的id并根据点击调用函数

javascript - IE 11 上的 Bootstrap 和 JQuery 布局异常