news 2026/5/1 17:33:52

nums.sort()和nums.sort((a, b) => a - b)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
nums.sort()和nums.sort((a, b) => a - b)

这两者有重要区别

nums.sort()

默认按字符串排序(字典序),即使数组里是数字也会被转换为字符串再比较:

letnums=[100,4,200,1,3,2];nums.sort();// [1, 100, 2, 200, 3, 4]console.log(nums);// 错误的顺序!

nums.sort((a, b) => a - b)

按数值大小升序排序

letnums=[100,4,200,1,3,2];nums.sort((a,b)=>a-b);// [1, 2, 3, 4, 100, 200]console.log(nums);// 正确的顺序!

验证示例

lettest1=[100,4,200,1,3,2];console.log(test1.sort());// [1, 100, 2, 200, 3, 4]console.log(test1.sort((a,b)=>a-b));// [1, 2, 3, 4, 100, 200]lettest2=[10,2,1];console.log(test2.sort());// [1, 10, 2]console.log(test2.sort((a,b)=>a-b));// [1, 2, 10]

对于最长连续序列问题

使用nums.sort()会导致错误结果:

functionlongestConsecutiveWrong(nums){nums.sort();console.log("排序后:",nums);// 错误的顺序// 后面的逻辑会得到错误结果// 比如 [100, 4, 200, 1, 3, 2] 排序后是 [1, 100, 2, 200, 3, 4]// 会认为最长连续序列是 1 而不是 4}

其他排序方式

// 升序排序nums.sort((a,b)=>a-b);// 降序排序nums.sort((a,b)=>b-a);// 按绝对值排序nums.sort((a,b)=>Math.abs(a)-Math.abs(b));// 按字符串长度排序(如果元素是字符串)strings.sort((a,b)=>a.length-b.length);

所以对于数字排序,一定要使用sort((a, b) => a - b)而不是默认的sort()。这是 JavaScript 中一个常见的陷阱!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 13:17:24

MCP 很火,来看看我们直接给后台管理系统上一个 MCP?

一、什么是 MCP 引用一些官方的介绍吧: Model Context Protocol (MCP) 是一个开放协议,它使 LLM 应用与外部数据源和工具之间的无缝集成成为可能。无论你是构建 AI 驱动的 IDE、改善 chat 交互,还是构建自定义的 AI 工作流,MCP 提…

作者头像 李华
网站建设 2026/5/1 3:10:49

命令替换(Command Substitution)详解

命令替换(Command Substitution)详解 🎯 一句话概括 命令替换 把一个命令的输出作为另一个命令的参数或变量值。这是Shell编程中最强大、最常用的功能之一! 💡 核心概念 基本语法 # 两种语法都有效 command # 反引…

作者头像 李华
网站建设 2026/5/1 3:11:49

[特殊字符] Pathway:高效的Python ETL框架,助力实时数据处理与分析

Pathway 实时数据处理框架介绍 在当今数据驱动的时代,能够有效处理实时数据流与批量数据的工具愈加重要。Pathway是一个用于流处理、实时分析、LLM(大语言模型)管道和RAG(实时生成)应用的Python ETL框架。它为用户提供…

作者头像 李华
网站建设 2026/5/1 17:21:01

高德扫街榜2026发布:首个全季节、全品类、全人群和全球化的真实榜单

2026年1月7日,阿里巴巴集团旗下高德正式发布高德扫街榜2026——在原有的“真实”核心理念基础上,围绕数字、信任与科技三大核心力量全面升级,发布了飞行街景、时令榜单、AR实景、好友动态等一系列新功能,推动生活服务榜单进入“比…

作者头像 李华
网站建设 2026/5/1 7:18:09

6.1 Elasticsearch-Lucene 索引文件结构:tim、tip、doc、pos、pay

6.1 Elasticsearch-Lucene 索引文件结构:tim、tip、doc、pos、pay Elasticsearch 的搜索性能之所以能在 PB 级别数据量下仍保持毫秒级响应,核心依赖是 Lucene 的倒排索引文件格式。一个分片(shard)本质上就是 Lucene 的一个索引目…

作者头像 李华