问题标签 [asort]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sorting - 在 Lua 中按值关联排序表
我有一个键 => 值表,我想在 Lua 中排序。键都是整数,但不是连续的(并且有意义)。Lua 唯一的排序函数似乎是table.sort
,它将表视为简单数组,丢弃原始键及其与特定项目的关联。相反,我基本上希望能够使用PHP 的asort()
功能。
是)我有的:
排序操作后我想要的:
有任何想法吗?
编辑:根据答案,我将假设这只是我正在使用的特定嵌入式 Lua 解释器的一个奇怪的怪癖,但在我的所有测试中,pairs()
总是按照它们添加到的顺序返回表项桌子。(即上述两个声明会以不同的方式迭代)。
不幸的是,因为这不是正常行为,所以看起来我无法得到我需要的东西;Lua 没有内置(当然)必要的工具,而且嵌入式环境太有限,我无法解决它。
不过,谢谢大家的帮助!
linux - awk / gawk asorti() 问题
gawk 的 asorti 函数有以下问题:
结果是:
所以很清楚awk,按字典顺序排序索引,但是awk的文档说(asort(s [,d])):
“ s 的内容使用 gawk 比较值的常规规则进行排序......”
但是,当我将索引本身复制到临时数组中,并使用 asort() 对该新数组进行排序时,
看起来没问题(使用类似的东西):
我做错了,还是 gawk 的 asorti() 有问题?
php - PHP 的 asort 不能正常工作?
我有一个示例数组:
我想按值对其进行排序并记住它的键。我预期的结果是:
所以我的第一个想法是:asort
!好的,我做到了
但是不——它不只是移动5 => 35
到数组的末尾。它将我的数组更改为:
你看 ?具有相同值的键是反向排序的。为什么 ?
php - php排序数组问题
我想按字母对数组进行排序
当我使用 asort() 它的排序时,但我得到的结果首先是大写的名称,然后是小写的所有名称
喜欢 :
如果我想:
我该怎么做 ?
php - 如何按创建日期对数组进行排序
我有一系列文章。
我想按创建日期(最近的 DESC)对数组进行排序。
我很感激任何帮助。
谢谢。
php - 排序如何工作?
我正在查看我的一些旧工作,发现 asort 函数可以完美地用于我需要的一些用途,尽管我尝试了一种截然不同且冗长的方式。
所以我的问题是,排序时 asort 如何保持关联?我认为可以按键或按值对数组进行排序,是否有第三个排序枢轴?
php - php数组排序
我有 2 个这样的数组:
我将使用 asort() 对 $a 进行排序,并且我想同样对第二个数组 $b 进行自动排序 $a。
我该怎么办?
awk - 使用 AWK 对关联数组进行排序
这是我的数组(gawk 脚本):
排序后,我需要以下结果:
当我使用“asort”时,索引会丢失。如何在不丢失索引的情况下按数组值排序?(我需要根据它们的值排序索引)
(我只需要使用 awk/gawk 来获得这个结果,而不是 shell 脚本、perl 等)
如果我的帖子不够清楚,这里有另一篇解释相同问题的帖子:http ://www.experts-exchange.com/Programming/Languages/Scripting/Shell/Q_26626841.html )
提前致谢
更新 :
感谢你们俩,但我需要按值排序,而不是索引(我想要根据它们的值排序索引)。
换句话说,我需要这个结果:
不是 :
(我同意,我的例子很混乱,选择的值很糟糕)
从 Catcall 的代码中,我编写了一个有效的快速实现,但它相当难看(我在排序之前连接键和值,并在比较期间拆分)。这是它的样子:
当然,如果您有更干净的东西,我很感兴趣...
谢谢你的时间
php - 如何使用 PHP 中包含的关联数组的子字段对关联数组进行排序?
如何按其中一个值对关联数组进行排序?
例如:
所以输出是:
这是一个过于简单的例子,只是为了证明我的问题。
我仍然需要它$arr
是一个关联数组。
php - 对具有数百个不同名称和值的数组进行排序
我正在制作一个程序来跟踪数百名用户,获取他们的体验(存储它),然后在指定的跟踪时间结束后按需再次获取它。我要做的是对获得的经验数量进行排序,同时将其与名称相关联,然后将获得的经验从高到低输出。
这是我正在做的一个例子:
所以,我正在努力做到这一点,如果我要打印一个变量,那么'a'将是第一个(因为,正如你所看到的,我做到了,所以'a'是唯一获得的'人'比其他人有更多的经验'),然后'be'会按照字母顺序跟随它。它目前在收集任何数据之前按字母顺序对其进行排序,所以我假设我所要做的就是对获得的经验进行排序。
我怎么能做到这一点?