当前位置:首页 > 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]

字符串逆序

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

js实现逆序

  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"

数字逆序

数字逆序需要先转为字符串,逆序后再转回数字:

js实现逆序

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;
}

递归实现逆序

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

// 递归逆序字符串
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
分享给朋友:

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swip…

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https:/…

js实现继承

js实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Paren…

原生js实现轮播图

原生js实现轮播图

基本结构搭建 HTML部分需要包含轮播图容器、图片列表及导航按钮。结构示例如下: <div class="slider-container"> <div class="sli…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaS…