提问人:varsha Das 提问时间:12/4/2015 最后编辑:Jamie Eltringhamvarsha Das 更新时间:12/4/2015 访问量:18469
在 Javascript 中反转句子并以相反的顺序打印每个单词 [closed]
Reverse a sentence and print each word in reverse order in Javascript [closed]
问:
我正在制作一个 JavaScript 程序,如果用户输入诸如
"i love my country"
输出将产生:
country
my
love
i
我尝试使用函数,但没有得到所需的输出。split
<script language="javascript">
var n, x, i, j;
rev = "";
n = window.prompt("enter any string");
x = n.split(" ");
for (i = 0; i < x.length; i++) {
for (j = x[i].length() - 1; j >= 0; j--) {
document.writeln(x[i].charAt(j));
document.write(rev);
}
}
</script>
答:
1赞
gurvinder372
12/4/2015
#1
试试这个代码
var str = "SAMPLE STRING";
alert( str.split( "\\s+" ).reverse.join ( " " ) );
alert( str.split( " " ).reverse.join ( " " ) );
由于您想在新行中打印
var str = "SAMPLE STRING";
alert( str.split( " " ).reverse.join ( "\n" ) );
评论
0赞
varsha Das
12/4/2015
谢谢你,先生。。。它正在工作
0赞
gurvinder372
12/4/2015
@varshaDas欢迎您,请不要忘记投票并选择答案。
2赞
guest271314
12/4/2015
#2
尝试使用 ,Array.prototype.reverse()
Array.prototype.join()
var str = "I LOVE MY COUNTRY";
console.log(str.split(/\s/).reverse().join(" "));
删除 ; 不是一个函数;在每次迭代后添加以下内部循环以在输出中包含标记,以在 中输入的单词后面放置换行符。例如,尝试在 stacksnippets 输入“我爱我的国家”()
j = x[i].length()
.length
document.write("<br>")
for
<br>
i
html
prompt
prompt()
var n, x, i, j;
rev = "";
n = window.prompt("enter any string");
x = n.split(" ");
for (i = 0; i < x.length; i++) {
for (j = x[i].length - 1; j >= 0; j--) {
document.writeln(x[i].charAt(j));
}
document.write("<br>")
}
评论
0赞
guest271314
12/4/2015
@varshaDas 查看更新后的帖子
1赞
Ramanlfc
12/4/2015
#3
var str = "SAMPLE STRING";
var arr = str.split(" ");
arr.reverse();
str = arr.join(" ");
评论
0赞
varsha Das
12/4/2015
是的,它正在工作,但我想用新行打印每个单词
0赞
Ramanlfc
12/4/2015
@varshaDas在这种情况下,只需在反转后使用 for 循环并打印每个元素arr
0赞
Jacob George
12/4/2015
#4
a = "SAMPLE STRING"
a.split(" ").reverse().forEach(function(element) {
document.writeln(element);
document.write('<br />')
})
输出:
STRING
SAMPLE
评论
0赞
varsha Das
12/4/2015
感谢您的代码,但我想将每个单词打印成新行......怎么做?
0赞
Jacob George
12/4/2015
@varshaDas我已经更新了所需输出的代码
评论