【发布时间】:2020-02-08 00:45:09
【问题描述】:
学习 JavaScript 并做一些问题。我正在尝试反转给定的字符串,但我不知道为什么我的逻辑是错误的,因为它通过调试器运行,看起来它正在按预期进行交换。
非常感谢任何帮助,我知道这很简单,但这意味着我错过了一些重要的东西。
function reverse(s) {
let i = 0;
let j = s.length - 1;
while (i < j) {
let temp = s[j];
s[j] = s[i];
s[i] = temp;
i++;
j--;
}
return s;
}
console.log(reverse("hello"));
【问题讨论】:
-
我只会向后循环原始字符串并将这些字符连接到一个新字符串上,然后返回它。
function reverse(s) { let j = s.length - 1; let r = '' while (j >= 0) { r += s[j]; j--; } return r; } console.log(reverse("hello")); -
javascript 字符串是不可变的,您可以参考此链接以获得更好的解释。 stackoverflow.com/questions/1431094/…
标签: javascript algorithm