js实现反转
实现字符串反转
使用 split()、reverse() 和 join() 方法组合实现字符串反转:
const str = 'hello';
const reversedStr = str.split('').reverse().join('');
console.log(reversedStr); // 输出 'olleh'
实现数组反转
直接使用数组的 reverse() 方法:

const arr = [1, 2, 3, 4];
arr.reverse();
console.log(arr); // 输出 [4, 3, 2, 1]
手动实现反转(循环方式)
通过循环手动反转字符串或数组:
function reverseString(str) {
let reversed = '';
for (let i = str.length - 1; i >= 0; i--) {
reversed += str[i];
}
return reversed;
}
console.log(reverseString('world')); // 输出 'dlrow'
使用递归实现反转
递归方式反转字符串:

function reverseStringRecursive(str) {
return str === '' ? '' : reverseStringRecursive(str.substr(1)) + str.charAt(0);
}
console.log(reverseStringRecursive('recursive')); // 输出 'evisrucer'
扩展运算符实现数组反转
使用扩展运算符创建新数组(不改变原数组):
const original = [1, 2, 3];
const reversed = [...original].reverse();
console.log(original); // [1, 2, 3]
console.log(reversed); // [3, 2, 1]
链表反转实现
针对链表数据结构实现反转:
class Node {
constructor(value, next = null) {
this.value = value;
this.next = next;
}
}
function reverseLinkedList(head) {
let prev = null;
let current = head;
while (current) {
const next = current.next;
current.next = prev;
prev = current;
current = next;
}
return prev;
}






