0

我想以某种关联方式存储词汇及其翻译...

我在想一个关联数组……每个对象都是一个单词及其翻译。

var holder = [];
holder.push({"chinese" : "Nǐ", "english" : "you"}, {"chinese" : "Wo", "english" : "I"}, etc...);

然后显示您悬停的文本的翻译:

$("#npc_dialog_dictionary_chinese span").on("mouseover", function() {
    var word = $(this).text();
    $("#currentWord").text(parseHoveredText(word));
}).on("mouseout", function() {
    $("#currentWord").empty();
});

哪个电话:

function parseHoveredText(word) {
  for (obj in holder) {
    if (word == holder[obj]["ch"]) {
        return holder[obj]["en"];
    }
}
return "";
}

它有效:(您可以看到将鼠标悬停在Ni显示正确的翻译You

在此处输入图像描述

但我的问题是...

将每个单词的翻译对存储在一个对象中,然后像这样的数组这样一个不错的选择吗?

它仅适用于一种语言,但我将有几个不同的单词需要翻译。

4

1 回答 1

0

有很多问题需要考虑(多少字,您计划支持多少种语言,什么存储要求,什么运行时要求)。

你有没有想过一个字符串哈希表,它将你的单词散列成一个存储翻译单词的向量。例如,“Ni”可以散列成一个存储其英语、西班牙语、意大利语翻译的向量。这种方法也可以很好地扩展。

于 2013-08-30T14:12:03.547 回答