如何按值对关联数组进行排序并保留值?
How to sort an associative array by value and keep values?
我有一个名为 map 的关联数组:
var map = new Array();
map["exampleKey"] = 7;
键是字符串,值是整数。某些键可能具有相同的值。
我已经尝试过类似问题的解决方案,例如 this one.
但是,我还没有找到一个保留值的方法。他们只是按顺序创建带有键的数组。我需要一种按顺序(按值排序)将键和值存储到某个适当的数据结构中的排序。
我也没有服务器所以任何解决方案都必须JavaScript。
JavaScript 中没有关联数组(撇开 ES2015 中的 Map
class)。对象属性不能排序;运行时以任意顺序通过所有 API 提供 属性 个名称。
您可以做的是通过 Object.keys()
或某种等效方法将 属性 名称获取到数组中,然后对该数组进行排序并通过遍历该数组按顺序访问对象属性。
您总是可以 post 将数组返回到您自己的服务器(通过 ajax)并让 PHP 分类(或分类)处理它。
或者读这个:
How to sort an associative array by its values in Javascript?
我有一个名为 map 的关联数组:
var map = new Array();
map["exampleKey"] = 7;
键是字符串,值是整数。某些键可能具有相同的值。
我已经尝试过类似问题的解决方案,例如 this one. 但是,我还没有找到一个保留值的方法。他们只是按顺序创建带有键的数组。我需要一种按顺序(按值排序)将键和值存储到某个适当的数据结构中的排序。
我也没有服务器所以任何解决方案都必须JavaScript。
JavaScript 中没有关联数组(撇开 ES2015 中的 Map
class)。对象属性不能排序;运行时以任意顺序通过所有 API 提供 属性 个名称。
您可以做的是通过 Object.keys()
或某种等效方法将 属性 名称获取到数组中,然后对该数组进行排序并通过遍历该数组按顺序访问对象属性。
您总是可以 post 将数组返回到您自己的服务器(通过 ajax)并让 PHP 分类(或分类)处理它。
或者读这个:
How to sort an associative array by its values in Javascript?