8

我正在尝试添加一个变量键,但没有运气。

这是我到目前为止得到的:

mysql('translations',{
    check: 'element_id',
    element_id: element_id,
    {'lang-'+lang_id}: value
});

变量 key 是函数的最后一行。

有任何想法吗?

4

2 回答 2

19

您不能对对象文字中的标识符使用表达式。

首先创建对象,然后可以使用动态名称:

var obj = {
  check: 'element_id',
  element_id: element_id,
}

obj['lang-'+lang_id] = value;

mysql('translations', obj);
于 2012-09-29T10:11:40.693 回答
1

你可以这样做:

var x = {
    check: 'element_id',
    element_id: element_id    
};
x['lang-'+lang_id] = value;

mysql('translations', x);
于 2012-09-29T10:12:15.677 回答