许昌长葛网站建设制作设计,网站抓取诊断,网站怎么做电子合同,手机网站建设做竞价推广的技巧JS实现根据数组对象的某一属性排序 一、冒泡排序#xff08;先了解冒泡排序机制#xff09;二、根据数组对象的某一属性排序#xff08;引用sort方法排序#xff09; 一、冒泡排序#xff08;先了解冒泡排序机制#xff09;
以从小到大排序为例#xff0c;冒泡排序的原… JS实现根据数组对象的某一属性排序 一、冒泡排序先了解冒泡排序机制二、根据数组对象的某一属性排序引用sort方法排序 一、冒泡排序先了解冒泡排序机制
以从小到大排序为例冒泡排序的原理就是通过两层循环把数组中两两相邻的元素进行比较是的大的元素放到后边元素交换位置从而一步步的交换元素的位置使得最大的元素放到数组的末尾这样内部的循环就进行了一轮再根据外部的循环依次再把次大一点的元素放到数组的末尾从而实现数组的逐步排序。代码如下
// 冒泡排序
var arr [52,3,8,57,75,2,1];
for (var i 0; iarr.length; i) {for (var j 0;jarr.length-i; j) {if(arr[j]arr[j1]){var temp arr[j];arr[j]arr[j1];arr[j1]temp;}}
}
console.log(arr); //[1, 2, 3, 8, 52, 57, 75]二、根据数组对象的某一属性排序引用sort方法排序
定义一个数组
var newArray [{name: aaa,value: 0
},
{name: ddd,value: 3
},
{name: bbb,value: 1
},
{name: eee,value: 4
},
{name: ccc,value: 2
}];// 排序
function compare(property) {return function (a, b) {var value1 a[property];var value2 b[property];return value1 - value2;}
}
//打印看结果
console.log(newArray.sort(compare(value)))//根据字符串排序不能用 - 字符串相减得到NAN要用 来
function compare(prop) {return function (a, b) {var value1 a.props[prop].uiValues[0]var value2 b.props[prop].uiValues[0]if(value1 value2){return -1;}else if(value1 value2){return 1;}else{return 0;}}
}