var arr_1 = ["2017-02-05", "2017-02-06", "2017-02-04", "2017-01-31", "2017-02-01", "2017-02-02", "2017-02-03"]
var arr_2 =["142146.00", "93380.03", "49825.00", "90437.00", "69174.00", "73603.00", "76662.00"]
arr_1 = arr_1.sort();
arr_1为["2017-01-31", "2017-02-01", "2017-02-02", "2017-02-03", "2017-02-04","2017-02-05", "2017-02-06"]
此时arr_1会按照正确日期来排序,请问arr_2 如何根据arr_1的的顺序来排序?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
arr_2.sort() 从小到大排序
第一步需要将两个数组的值对应起来,可以使用
JSON对象,key值为时间,value值为金钱得到对象类似于
{"2017-02-05": "142146.00"...}这样然后再对
arr_1排序,使用map从对象中返回对应的值就是排好序的了有对应关系的时候建议优先考虑对象:obj={arr1:arr2} 排序后就可以直接匹配了。当然这种方法比较蠢,但是更容易理解~
用快排在排序赋值的过程中多操作一下这个数组就行了。
我的思路是自己实现一个排序算法,给
arr_1排序的同时带上arr_2就行了。下边用的是冒泡: