在不改变词序的情况下反转字符串中的每个词
Reverse each word in string without changing word order
环顾四周,找不到这个问题的答案。
我试图在不改变单词顺序的情况下反转字符串中的每个单词...
这是我的代码:
function wordsReverser(string){
return string.split('').reverse().join('');
}
console.log(wordsReverser('New string, same results.'));
我得到的结果是这样的:
".stluser emas ,gnirts weN"
我正在寻找这个:
"weN gnirts... "
这是一个jsbin
更新:编辑了答案以反映更新后的问题
function wordsReverser(string){
return string.split(' ').map(function(word) {
return word.split('').reverse().join('');
}).join(' ');
}
alert(wordsReverser('New string, same results.'));
// weN ,gnirts emas .stluser
如果您想保留标点符号:
function wordsReverser(string){
return string.split(' ').map(function(word) {
var rev = word.split('').reverse().join('');
if (['.',','].indexOf(rev[0]) > -1) {
rev = rev.slice(1) + rev[0];
}
return rev;
}).join(' ');
}
alert(wordsReverser('New string, same results.'));
// weN gnirts, emas stluser.
这是一个 JSFiddle,其中包含您正在寻找的解决方案https://jsfiddle.net/e109c4pc/
function wordsReverser(string){
var arr = string.split("");
var output = [];
for(var i = arr.length - 1; i >= 0; i--){
output.push(arr[i]);
}
return output.join("");
}
尝试这样的事情。
function wordsReverser(string){
return string.split("").reverse().join("").split(" ").reverse().join(" ")
}
console.log(wordsReverser('New string, same results.'));
您需要将文本拆分成单独的单词,然后单独反转每个单词。
function wordsReverser(string){
var words = string.split(' ');
var result = [];
for(var i = 0; i < words.length; i ++){
result.push(words[i].split('').reverse().join(''));
}
return result.join(' ');
}
console.log(wordsReverser('New string, same results.'));
环顾四周,找不到这个问题的答案。
我试图在不改变单词顺序的情况下反转字符串中的每个单词...
这是我的代码:
function wordsReverser(string){
return string.split('').reverse().join('');
}
console.log(wordsReverser('New string, same results.'));
我得到的结果是这样的: ".stluser emas ,gnirts weN"
我正在寻找这个: "weN gnirts... "
这是一个jsbin
更新:编辑了答案以反映更新后的问题
function wordsReverser(string){
return string.split(' ').map(function(word) {
return word.split('').reverse().join('');
}).join(' ');
}
alert(wordsReverser('New string, same results.'));
// weN ,gnirts emas .stluser
如果您想保留标点符号:
function wordsReverser(string){
return string.split(' ').map(function(word) {
var rev = word.split('').reverse().join('');
if (['.',','].indexOf(rev[0]) > -1) {
rev = rev.slice(1) + rev[0];
}
return rev;
}).join(' ');
}
alert(wordsReverser('New string, same results.'));
// weN gnirts, emas stluser.
这是一个 JSFiddle,其中包含您正在寻找的解决方案https://jsfiddle.net/e109c4pc/
function wordsReverser(string){
var arr = string.split("");
var output = [];
for(var i = arr.length - 1; i >= 0; i--){
output.push(arr[i]);
}
return output.join("");
}
尝试这样的事情。
function wordsReverser(string){
return string.split("").reverse().join("").split(" ").reverse().join(" ")
}
console.log(wordsReverser('New string, same results.'));
您需要将文本拆分成单独的单词,然后单独反转每个单词。
function wordsReverser(string){
var words = string.split(' ');
var result = [];
for(var i = 0; i < words.length; i ++){
result.push(words[i].split('').reverse().join(''));
}
return result.join(' ');
}
console.log(wordsReverser('New string, same results.'));