当前位置:首页 > JavaScript

js实现逆序

2026-02-01 05:04:30JavaScript

数组逆序

在JavaScript中,可以使用reverse()方法直接对数组进行逆序操作。该方法会改变原数组。

const arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // 输出: [5, 4, 3, 2, 1]

字符串逆序

字符串没有内置的逆序方法,但可以通过以下方式实现:

  1. 将字符串转为数组后逆序再合并
  2. 使用循环从后向前拼接字符
// 方法1: 转为数组逆序
const str = "hello";
const reversedStr = str.split('').reverse().join('');
console.log(reversedStr); // 输出: "olleh"

// 方法2: 循环拼接
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 reverseNumber(num) {
    const reversed = parseInt(num.toString().split('').reverse().join(''));
    return Math.sign(num) * reversed; // 处理负数情况
}
console.log(reverseNumber(12345)); // 输出: 54321
console.log(reverseNumber(-123)); // 输出: -321

链表逆序

对于链表数据结构,需要遍历链表并反转指针方向:

class Node {
    constructor(value) {
        this.value = value;
        this.next = null;
    }
}

function reverseLinkedList(head) {
    let prev = null;
    let current = head;
    while (current !== null) {
        const next = current.next;
        current.next = prev;
        prev = current;
        current = next;
    }
    return prev;
}

递归实现逆序

递归方法可以实现字符串或链表的逆序:

js实现逆序

// 递归逆序字符串
function reverseStringRecursive(str) {
    if (str === "") return "";
    return reverseStringRecursive(str.substr(1)) + str[0];
}

// 递归逆序链表
function reverseLinkedListRecursive(head) {
    if (!head || !head.next) return head;
    const reversed = reverseLinkedListRecursive(head.next);
    head.next.next = head;
    head.next = null;
    return reversed;
}

标签: 逆序js
分享给朋友:

相关文章

js实现拷贝

js实现拷贝

实现文本拷贝 使用 document.execCommand 方法(已废弃但兼容性较好): function copyText(text) { const textarea = document…

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js实现vue路由

js实现vue路由

Vue 路由的基本实现 在 Vue.js 中实现路由功能通常使用 Vue Router 库。Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue R…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js验证码的实现

js验证码的实现

验证码的基本实现原理 验证码(CAPTCHA)的核心目标是区分人类用户和自动化程序。JavaScript可用于生成或验证客户端验证码,但需注意纯前端验证可能被绕过,通常需结合后端验证。 纯前端验证码…

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…