如何在 JavaScript 中反转字符串
要反转字符串,您可以将 字符串转换为数组 ,然后使用 JavaScript 数组的内置 reverse()
方法 。
Array.from('help').reverse().join(''); // pleh
或者
let str = 'help';
[...str].reverse().join(''); // pleh
您也可以使用 str.split('').reverse().join('')
,但我们建议使用 Array.from()
或 传播运算符 。 这 split()
方法不处理 UTF-16 字符,如 emojis 。
不使用内置方法反转字符串
在没有任何内置方法的情况下反转字符串是一个常见的面试问题。 你可以使用 for
循环以反向遍历字符串,如下所示。
let str = 'hello world';
let reversed = '';
for(let i = str.length - 1; i >= 0; i--) {
result += str[i];
}
return result;
使用递归
另一种反转字符串的方法是使用递归。 这个想法是您可以将反转字符串的问题分解为两个步骤:
- 交换字符串的第一个和最后一个字符
- 反转除第一个和最后一个字符之外的所有内容
function reverseString(str = '') {
if (str.length <= 1) {
return str;
}
const firstChar = str.charAt(0);
const lastChar = str.charAt(str.length - 1);
return lastChar + reverse(str.slice(1, str.length -1)) + firstChar;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论