在javascript中使用关联数组

时间:2011-11-11 09:25:31

标签: javascript

我制作了一个包含2个输入框和一个输入按钮的应用程序。我的问题是当用户输入一些输入时,例如。 “我曾经去过某个地方”然后我的结果应该是“我UD GNG某个地方”。为此,我使用此代码http://pastebin.com/vHkhASdZ

请,任何人都知道如何解决然后请尽快回复我。我在php中解决了我的问题但是在javascript的情况下我不知道。这是我在php http://codepad.viper-7.com/SQvO6Y中的输出链接 我希望我的结果在javascript.Pls任何人都知道,然后给予回复。

2 个答案:

答案 0 :(得分:3)

使用此功能

var replaceText = function () {
    var inputval = document.getElementById('first_text').value;
    var arr = {
        "going": "GNG",
        "used to": "UD",
        "as soon as possible": "ASAP",
        "to do fast": "tdf"
    }

    for(var key in arr) {
        if (typeof (arr[key]) !== "undefined") inputval = inputval.replace(key, arr[key])
    }
    document.getElementById("second_text").value = inputval;
}

答案 1 :(得分:0)

做这样的事情。将单词替换定义为map。

var wordmap = {
  going: 'GNG',
  'used to': 'UD',
  'as soon as possible': 'asap',
  'to do fast': 'tdf',
  ..

}

并定义迭代输入字符串中每个单词的函数。

function replace( text ) {
    var input = text.split(' ');
    var outputval = []
    for (var i in input) {
       outputval.push( wordmap[input[i]] || input[i] )
    }
    return outputval.join(' ');
}

并像这样使用

var output = replace( document.getElementById('first_text').value );