JavaScript 对数组的数组进行排序

2023-12-08

我有这个数组的数组。我希望它按数组的长度排序。 我用array.sort( (a, b) => a.length > b.length) );

[ 
  [],
  [ 2, 2, 2, 2, 2 ],
  [],
  [],
  [ 5 ],
  [ 3, 3, 3, 3 ],
  [],
  [],
  [ 1 ],
  [ 2, 2 ],
  [ 1 ],
  [],
  [ 4 ],
  [ 3 ],
  [ 1, 1 ],
  [],
  [ 5, 5 ],
  [],
  [],
  [ 4, 4, 4, 4, 4, 4 ],
  [],
  [ 3 ],
  [ 5 ],
  [],
  [ 5 ],
  [ 1, 1 ],
  [],
  [ 3 ],
  [],
  [],
  [],
  [],
  [ 4 ],
  [ 1 ],
  [ 4, 4, 4, 4 ],
  [],
  [ 5, 5, 5, 5 ],
  [],
  [],
  [ 3 ],
  [ 5 ],
  [ 2 ],
  [],
  [],
  [ 2 ],
  [],
  [],
  [ 1, 1, 1 ],
  [],
  [ 4 ],
  [ 3, 3, 3 ],
  [],
  [],
  [ 1, 1 ],
  [],
  [ 4, 4 ],
  [ 2, 2, 2 ],
  [],
  [ 2 ],
  [ 2 ],
  [ 4 ],
  [ 2 ],
  [ 3 ],
  [ 2 ],
  [],
  [],
  [],
  [ 5 ] ]

但毕竟排序会返回这个。为什么长度为6、里面有4的数组放错了地方?

[ 
  [],
  [],
  [],
  [],
  [ 5 ],
  [ 2 ],
  [],
  [],
  [ 1 ],
  [ 3 ],
  [ 1 ],
  [],
  [ 4 ],
  [ 3 ],
  [ 2 ],
  [],
  [ 4 ],
  [],
  [],
  [ 2 ],
  [],
  [ 3 ],
  [ 5 ],
  [],
  [ 5 ],
  [ 2 ],
  [],
  [ 2 ],
  [],
  [],
  [],
  [],
  [ 4 ],
  [ 1 ],
  [],
  [],
  [],
  [],
  [],
  [ 3 ],
  [ 5 ],
  [ 2 ],
  [],
  [],
  [ 2 ],
  [],
  [],
  [],
  [],
  [ 4 ],
  [],
  [ 4, 4, 4, 4, 4, 4 ],
  [ 5 ],
  [ 5, 5 ],
  [ 1, 1 ],
  [ 4, 4 ],
  [ 3, 3 ],
  [ 3, 3 ],
  [ 1, 1 ],
  [ 2, 2 ],
  [ 1, 1 ],
  [ 1, 1, 1 ],
  [ 2, 2, 2 ],
  [ 3, 3, 3 ],
  [ 5, 5, 5, 5 ],
  [ 3, 3, 3, 3 ],
  [ 4, 4, 4, 4 ],
  [ 2, 2, 2, 2, 2 ] ]

这有什么问题吗?


要执行排序功能,您必须提供 max、min equal(+1(实际上 >0)、-1(实际上

arr.sort(function(a, b){
  // ASC  -> a.length - b.length
  // DESC -> b.length - a.length
  return a.length - b.length ;
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript 对数组的数组进行排序 的相关文章

  • React 渲染中的不变违规或 React 中迭代和返回的正确方法

    我在 React 渲染中遇到了持续存在的问题 这段代码 jsx React DOM var AnswerRows React createClass componentDidMount function render function th
  • 使用闭包和自调用函数制作计数器

    我想知道为什么这段代码不起作用 var uniqueInteger function var counter 0 return function return counter console log uniqueInteger 0 cons
  • 如何从表中选择所有偶数 id?

    我想从 MySQL 数据库的表中选择所有甚至帖子 ID 然后显示它们 我还想获取所有带有奇怪 id 的帖子并将它们显示在其他地方 我想使用 PHP 来完成此操作 因为这是我使用的服务器端语言 或者 我是否必须选择所有帖子 然后使用 Java
  • HTML5 服务器端事件:EventSource 与包装的 WebSocket

    HTML5 服务器发送事件 SSE API 是否只是 HTML5 WebSocket 之上的受限制的 基于事件的 API 在我看来 一个EventSource只是一个WebSocket that Cannot send data 使用tex
  • 使用 NodeJS 让 Discord 机器人发送带有消息的图片

    我有几张照片 全部在 imgur 上 带有直接图像链接 格式 https i imgur com XXXXXX jpg https i imgur com XXXXXX jpg 以及用 NodeJS 制作的 Discord 机器人 我发送这
  • 如何在 Node.js 中让一个 EventEmitter 监听另一个 EventEmitter?

    我想做这样的事情 var events require events var emitterA new events EventEmitter var emitterB new events EventEmitter emitterA ad
  • 如何在 Swift 中使用函数数组

    我已经阅读了我可以在这里找到的所有关于函数数组的帖子 太棒了 你能做到 我估计 但没有一篇文章实际上展示了如何使用它们 至少不是我想要做的 这就是我想要的 它们都可以采用相同的参数 但这不是必需的 这篇文章很接近 将允许我循环执行每个函数
  • 在 Angular2 项目中集成 Treant-js

    我正在尝试在 Angular2 项目中使用 treant js 但我正在努力解决如何正确集成它的问题 我有一个工作正常的 JavaScript HTML 示例 我正在尝试在 Angular2 中工作 我创建了一个组件 从 npm 添加了 t
  • 提交前验证表单(比检查空字段更复杂)

    我有一个包含时间输入的表单 具体来说 开放时间和结束时间 当按下提交按钮时 它会转到一个 php 页面 其中这些输入将添加到数据库中 在允许提交表单之前我想检查一些事情 例如 我想确保开始时间早于 小于 结束时间 这是表格 Opens
  • 引入 V8 后,Google Apps 脚本无法为其他用户完全执行

    我编写了一个脚本 得到了这里好心人的大力帮助 该脚本使用 Google Sheets 脚本复制 Google Drive 上的文件夹 和内容 它运行了很长一段时间 但后来我启用了 V8 引擎 现在已禁用 问题是 它仍然适用于我 也许还有其他
  • 使用 jQuery 仅从字符串末尾修剪空格

    我知道 jQuery trim 函数 但我需要的是一种仅从字符串末尾修剪空格的方法 而不是开头 So str this is a string 会成为 str this is a string 有什么建议么 Thanks 您可以使用正则表达
  • 对象数组 - 在 Vue.js 生态系统中更新对象的正确方法

    我不确定问题到底出在哪里 但我会看看是否有人可以帮助我理解我的代码出了什么问题 我正在利用 Vuex 商店来跟踪某些不断变化的状态 我这样做如下 import Vue from vue import Vuex from vuex Vue u
  • setInterval 内的返回值

    我想在 setInterval 内返回一个值 我只想以一定的时间间隔执行一些操作 这就是我尝试过的 function git limit var i 0 var git setInterval function console log i
  • Web SQL 数据库 + Javascript 循环

    我正在尝试解决这个问题 但我自己似乎无法解决 我正在使用 Web SQL DB 但无法让循环正常使用它 I use for var i 0 i lt numberofArticles 1 i db transaction function
  • 将 NPM 包客户端与 nuxt 结合使用

    我对 nuxt 和 javascript 非常陌生 我正在尝试弄清楚如何在客户端使用我的应用程序的依赖项 我将它们列在我的 nuxt config js 中并使用 npm 安装 我也有一个文件 plugins导入它们的目录 不确定这是否好
  • Postman - 如何计算 JSON 响应中特定对象的出现次数

    我是 JSON 和 Postman 的新手 我相信我正在尝试做一些非常简单的事情 我创建了一个 GET 请求 它将获得如下所示的 JSON 响应 在下面的例子中我想得到count响应中所有 IsArchived 属性 这些属性的数量因响应而
  • 为什么我需要 $(document.body) 来使用 Mootools Element 方法扩展 document.body?

    因此 在尝试让我的应用程序在最新的 IE 上运行后 结果发现 IE 不喜欢以下代码 document body getElement className Firefox 和 Chrome 响应良好 但是document bodyIE 上没有
  • Dojo/on 和捕获阶段

    有没有办法用 dojo on 在捕获阶段 而不是冒泡阶段 触发事件 我最终在这里寻找有关 on 的前身 dojo connect 的信息 就其价值而言 dojo connect 似乎不支持捕获阶段的事件侦听器 它的工作原理是将事件处理程序作
  • 使用 jquery 提供附加功能时菜单未正确对齐

    I need to make a mega menu similar to one as show in image below 到目前为止 我已经能够在某种程度上使其发挥作用 例如jsFiddle 在这里 http jsfiddle ne
  • 使用 Lodash 将对象键转换为具有键值数量的数组[重复]

    这个问题在这里已经有答案了 我有一个产品对象 products bread 1 milk 2 cheese 2 chicken 1 我想要一个包含产品名称的数组 如下所示 products bread milk milk cheese ch

随机推荐