如何在不使用方法

时间:2015-11-30 17:45:09

标签: javascript arrays substring charat

如果不使用拆分反向和连接函数,那么会怎么做呢?

给出的问题:反转字符串中的单词Sample Input:“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>

我可以使用内置方法制作它。但问题是只使用

  • 阵列
  • 子串
  • 的charAt()

那我该怎么做呢?

1 个答案:

答案 0 :(得分:-1)

好的,所以你可以使用charAt来查找单词之间的空格。当您知道空格的位置时,您可以使用子字符串来隔离单个单词并将它们存储在变量中。然后你可以移动它们并将它们连接在一起。举个例子:

var string = "Hello World",
    words = [],
    reversedString="",
    i;

for (i=0; i<string.length; i++) {
  if (string.charAt(i) === " ") {
    words.push(string.substring(0, i));
    words.push(string.substring(i));
  }
}

for (i=words.length-1; i>=0; i--) {
  reversedString += words[i];
}

请注意,这只是一个简单的(未经测试的)示例,仅适用于两个单词的字符串。如果你想让它更多地工作,你需要改变子串的逻辑。希望它有所帮助!

编辑:刚刚注意到我没有在结尾处反转字符串,代码已更新。

以下是您需要的几个参考资料: substring charAt