Array.reverse() 反转数组

最后更新:2026-09-09

Array.reverse() 反转数组

reverse 原地反转数组元素顺序并返回同一个数组引用。想保持原数组不变,先复制再反转([...arr].reverse() 或 ES2023 的 toReversed())。

分类数组
ES 版本ES1(1997)

📝 语法

数组.reverse();

返回值:被反转的原数组(同一引用)。

是否修改原值:是(原地修改)

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

[ 3, 2, 1 ]
[ 3, 2, 1 ]
[ 1, 2, 3 ]
[ 3, 2, 1 ]
⚠️ 警告 reverse 直接修改原数组——链式调用前如果不想破坏原数据,先 [...arr] 复制。
ℹ️ info ES2023 新增 toReversed():返回反转的新数组且不动原数组,逐步替代 [...arr].reverse() 写法。

🌐 浏览器支持

浏览器 ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
Array.reverse() v1 v12 v1.5 v3 v10.5
所有现代浏览器均支持
更多实战案例即将上线,敬请期待。

📚 相关教程

❓ 常见问题

Qreverse 会修改原数组吗?
A会,这是原地操作。保留原顺序请先复制:[...arr].reverse() 或 arr.toReversed()(ES2023)。
Q字符串怎么反转?
A字符串没有 reverse:用 str.split('').reverse().join('')。含 emoji 时用 [...str].reverse().join('')。
Qreverse 和 sort 一样是原地操作吗?
A是。sort/reverse/splice/fill/copyWithin 都是原地修改方法,push/pop/shift/unshift 也一样。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏