用户12771345
JavaScript 中的 Array.prototype.sort 为何不总是按预期排序?
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
用户12771345
社区首页
>
专栏
>
JavaScript 中的 Array.prototype.sort 为何不总是按预期排序?
JavaScript 中的 Array.prototype.sort 为何不总是按预期排序?
用户12771345
关注
发布于 2026-09-19 09:02:26
发布于 2026-09-19 09:02:26
21
0
举报
概述
在开发中,我们经常用 Array.prototype.sort() 对数组排序,特别是处理数字数组时,默认行为常常让人困惑。比如 [1, 5, 10, 2].sort() 会得到 [1, 10, 2, 5],而不是按数值大小排列。这是因为 sort 默认将元素转换为字符串,再比较 UTF-16 码元序列。更隐蔽的问题出现在比较函数返回值不规范、数组包含 undefined 或稀疏元素,以及现代引擎
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
javascript
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档