如果不使用拆分反向和联接功能,该怎么做?
给出的问题:反转字符串中的单词示例输入:“ Hello World”示例输出:“ World Hello”
<script>
var newString = "";
var theString = prompt("Enter a Phrase that you would like to reverse (Ex. Hello world)");
newString = theString.split(" ").reverse().join(" ")
document.write(newString);
</script>
数组可以像开箱即用的堆栈一样使用。堆栈就是后进先出,这就是您所需要的。
function reverseWords(str) {
var word, words, reverse;
words = str.match(/(?:\w+)/g);
reverse = '';
while(word = words.pop()) {
reverse += word + ' ';
}
return reverse.trim();
}
reverseWords('hello world');
或使用调用堆栈作为堆栈:
function reverseWords(str) {
var result = '';
(function readWord(i = 0) {
var word = '';
if(i > str.length) {
return '';
}
while(str[i] !== ' ' && i < str.length) {
word += str[i];
i++;
}
readWord(++i); // Skip over delimiter.
result += word + ' ';
}());
return result.trim();
}
reverseWords('hello world');
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句