当前位置:首页 > JavaScript

js实现逆序

2026-03-14 03:21:38JavaScript

实现数组逆序

使用 reverse() 方法可以直接修改原数组,将其元素顺序反转:

const arr = [1, 2, 3];
arr.reverse();
console.log(arr); // [3, 2, 1]

不修改原数组的逆序实现

通过扩展运算符或 slice() 创建新数组后反转:

js实现逆序

const original = [1, 2, 3];
const reversed = [...original].reverse();
console.log(reversed); // [3, 2, 1]
console.log(original); // [1, 2, 3](保持不变)

手动实现逆序算法

使用循环交换首尾元素直到中间位置:

function reverseArray(arr) {
  const result = [...arr];
  for (let i = 0, j = result.length - 1; i < j; i++, j--) {
    [result[i], result[j]] = [result[j], result[i]];
  }
  return result;
}

字符串逆序实现

通过拆分为数组后反转再合并:

js实现逆序

const str = "hello";
const reversedStr = str.split("").reverse().join("");
console.log(reversedStr); // "olleh"

使用reduce实现逆序

利用reduceRight从右向左构建新数组:

const arr = [1, 2, 3];
const reversed = arr.reduceRight((acc, cur) => [...acc, cur], []);
console.log(reversed); // [3, 2, 1]

递归实现逆序

递归取出最后一个元素并拼接:

function recursiveReverse(arr) {
  return arr.length ? [...recursiveReverse(arr.slice(1)), arr[0]] : [];
}

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

相关文章

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js 实现滚动

js 实现滚动

实现滚动的方法 使用 window.scrollTo() window.scrollTo() 方法可以滚动到文档中的特定位置。可以指定 x 和 y 坐标,或者使用平滑滚动的选项。 // 滚动到指定位…

js实现定位

js实现定位

使用Geolocation API获取当前位置 在JavaScript中,可以通过浏览器内置的Geolocation API获取用户的地理位置信息。该API需要用户授权才能访问位置数据。 if (n…

js 实现页面刷新

js 实现页面刷新

使用 location.reload() location.reload() 是原生 JavaScript 提供的页面刷新方法。调用该方法会重新加载当前页面,相当于点击浏览器的刷新按钮。 // 基本…

js 实现全选

js 实现全选

实现全选功能的方法 使用 JavaScript 实现全选功能通常需要操作复选框(checkbox)的状态。以下是几种常见的实现方式。 通过 DOM 操作实现全选 // 获取全选复选框和子复选…