我试图绕过以下但没有成功:
var string = "erehT era a tsav rebmun fo secruoser rof gninrael erom tpircsavaJ";
var x = string.split(" ");
for(i=0; i<=x.length; i++){
var element = x[i];
}
元素现在表示数组中的每个单词。我现在需要反转单词的顺序,而不是每个单词的每个字母的顺序。
答案 0 :(得分:13)
var string = "erehT era a tsav rebmun fo secruoser rof gninrael erom tpircsavaJ";
// you can split, reverse, join " " first and then "" too
string.split("").reverse().join("").split(" ").reverse().join(" ")
输出:“有大量资源可用于学习更多Javascript”
答案 1 :(得分:7)
您可以使用Array.prototype.map
和Array.prototype.reverse
完成此操作。
var result = string.split(' ').map(function (item) {
return item.split('').reverse().join('');
}).join(' ');
地图功能在那里做什么?
它遍历通过拆分初始字符串创建的数组,并调用我们提供的function (item)
作为每个元素的参数。然后它获取该函数的返回值并将其推入新数组中。最后它返回新数组,在我们的例子中,它按顺序包含反转的单词。
答案 2 :(得分:0)
您可以执行以下操作:
let stringToReverse = "tpircsavaJ";
stringToReverse.split("").reverse().join("").split(" ").reverse().join(" ")
// let关键字允许您在新的ECMAScript(JavaScript)中声明变量
答案 3 :(得分:0)
您可以执行以下操作。
var string = "erehT era a tsav rebmun fo secruoser rof gninrael erom tpircsavaJ";
arrayX=string.split(" ");
arrayX.sort().reverse();
var arrayXX='';
arrayX.forEach(function(item){
items=item.split('').sort().reverse();
arrayXX=arrayXX+items.join('');
});
document.getElementById('demo').innerHTML=arrayXX;
答案 4 :(得分:0)
JavaScript 用 regular expression 分割:
注意:([\s,.])
捕获组匹配空格、逗号和句点。
const string = "oT eb ro ton ot eb, taht si a noitseuq.";
function reverseHelper(str) {
return str.split(/([\s,.])/).
map((item) => {
return item.split``.reverse().join``;
}).join``;
}
console.log(reverseHelper(string));