小幼苗之旅
2015-12-16 09:59
有两个一维数组,第一个都是文字 第二个都是数字,用sort把第二个数组进行小到大的排序,如何让第一个数组随着第二个数组的排序跟着排序?
你的意思我不是特别的明白,我是这样理解的
function px() { var array1=["一","二","三","四","五"];//这里的文字是随便起的 var array2 = [5, 4, 3, 2, 1]; var temp = 0; var temp2=""; for (var i = 0; i < array2.length; i++) { for (var j = 0; j < array2.length - i; j++) { if (array2[j] > array2[j + 1]) { temp = array2[j + 1]; array2[j + 1] = array2[j]; array2[j] = temp; temp2=array1[j+1]; array1[j+1]=array1[j]; array1[j]=temp2; } } } console.log(array2); console.log(array1); }
不知道这样理解你的问题是否正确
你确定你的数组2 是int 不是string类型 var array=[80,9,7,50];不是这样var array=["80","9","7","50"],如果是后者你需要转化成int,用parseInt()转化一下
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
非常感谢,不过里面感觉很深奥,不是全懂
JavaScript进阶篇
468195 学习 · 21891 问题
相似问题