用于存储1000个标签/本地化标准化的JavaScript结构(或数组或列表)

时间:2014-04-09 20:10:52

标签: javascript arrays localization structure

我有一个场景,有许多程序员正在进行非常快速的开发,我们正在努力使我们的标签更加一致(实际上在客户的屏幕上显示的单词)。我们正处于一个转型期,在未来几年内,我们将为我们的所有页面提供新的前端。新的前端将是DHTMLX(一个JavaScript框架)。因此,现在是确保这一新流程保持一致性的最佳时机。

我们基本上有1000个"关键词"在整个1000页的页面中使用了很多次(它是一个非常大的产品)。拼写(特别是速记)总是略有不同。所以我们想要一个JavaScript结构来保存它们,程序员选择适当的变量。像这样......

<script>

/* This "w" structure stands for "word" and would hold all key words */
var w = {
    /* This "l" structure stands for "long" and would hold all the long versions */
    l: {
        ai: "Action Item",
        bom: "Bill of Materials",
        cage: "CAGE",
        assy: "Assembly"
    },
    /* This "s" structure stands for "short" and would hold all the short versions */
    s: {
        ai: "AI",
        bom: "BOM",
        cage: "CAGE",
        assy: "Assy"
    }
};

//How a programmer would use a label...
w.s.bom

</script>

我知道有些人可能会说这不应该在代码中处理,而是在规范的开发阶段。而你是对的。但暂时把它放在一边。

我的问题是:有人能想出一个更清晰的方法来解决这个问题吗?我刚刚给出了一个4字的例子,但最终会有1000个。我也在抛弃两个关联数组的想法(一个用于长,另一个用于简称)。

1 个答案:

答案 0 :(得分:4)

如果是我,我宁愿将术语的所有变体放在一起,而不是将它们分成不同大小的桶。如果此列表由某人必须维护的JSON文件支持,则会使生活更轻松。

这样的事情:

var w = {
    ai: {
        l: "Action Item",
        s: "AI"
    },
    bom: {
        l: "Bill of Materials",
        s: "BOM"
    },

};