我是javascript的新手,遇到了一些让我觉得奇怪的东西。以下行完成了我预期的操作,它将字符串拆分为一个字符数组,颠倒了数组,然后再将它们组合在一起。
string.split("").reverse().join("")
现在问我的问题。当我在多行上执行此操作时,这不起作用,如下所示:
let returnMe = string.split("");
returnMe.reverse();
returnMe.join("");
return returnMe;
似乎join函数没有完成它的工作,因为它返回一个反转的字符数组,这些字符没有粘在一起就是一个字符串。
为什么会这样?
因为你没有使用从.join("")
返回的内容。 .join
(以及许多其他方法)不会将数组更改为字符串,而是返回基于数组的新字符串。
与第一个相当的是:
let returnMe = string.split("");
returnMe = returnMe.reverse();
returnMe = returnMe.join("");
return returnMe;