在一个句子中反转一个单词的字母

时间:2014-05-20 23:13:30

标签: javascript function reverse

如果有“HI我的名字是杰克”这样的句子,怎么能把它改成“ih ym eman si kcaj”?

顺序相同但字母相反。它必须是一个功能。

  var sentence = "HI my name is jack";

function reverser(){
var reversed = sentence.split().reverse().join();
document.write(reversed);
}

4 个答案:

答案 0 :(得分:2)

你可以这样试试:

function reverser(inputSentence){
    var words = inputSentence.split(" "); // Split the sentence into words
    var output = new Array(); // Initiate the output
    words.forEach(function(word) { // For each word
        output.push(word.split("").reverse().join("")); // Reverse the word and add it to the output
    });
    return output.join(" "); // Join output to string and return it
}

工作小提琴:http://jsfiddle.net/fRj4B/1

答案 1 :(得分:1)

您需要将整个句子分成单词,遍历单词列表,然后单独翻转每个单词。然后,你需要将整个事物重新加入到一起来获得最后的句子。

function reverse(sentence) {
    var reversed = [];
    sentence.split(' ').forEach(function (word) {
        reversed.push(word.split('').reverse().join(''));
    });
    return reversed.join(' ');
}

答案 2 :(得分:1)

sentence.split(' ').map(function(str) { return str.split("").reverse().join(""); }).join(' ');

答案 3 :(得分:1)

var sentance = "HI my name is jack";
alert(sentance.split("").reverse().join("").split(" ").reverse().join(" "));