从另一个函数构建javascript数组

时间:2013-09-03 20:52:59

标签: javascript arrays

我有一个我称之为的翻译函数:_(“我的文字”)。

我正在尝试构建一个数组:

    var data = {
                        _("region"):[
                            {"id": "vignoble","name": _("Vineyard") },
                            {"id": "sousvignoble","name": _("Sub Vineyard") },
                            {"id": "soussousvignoble","name": _("Sub Sub Vineyard") },
                            {"id": "appellation","name": _("Appellation") },
                            {"id": "denomination","name": _("Denomination") }
                        ]};

它非常适合翻译属性“name”:_(“我的文本”),但会为第一级_(“区域”)抛出“语法错误:缺少:属性ID之后”。

我试图通过以下方式替换它: 1. function(){_(“region”)} 2.定义一个变量并用变量替换_(“region”),但是变量的名称打印而不是它的值

任何想法都会非常感激!

1 个答案:

答案 0 :(得分:2)

您不能在对象文字中使用动态属性名称。您可以使用bracket notation

在创建对象后分配属性
var data = {};
data[_("region")] = [...];