给object数组进行排序(排序条件是每个元素对象的属性个数)

示例数据:

var book={
			page:400
		}
		var car={
			color:"red",
			door:"four"
		}
		var person={
			name:"dpd",
			age:26,
			height:175
		}
		var oArray=[car,person,book];

思路是使用数组的排序方法 sort() ,该方法接收一个function 类型参数;遍历对象属性获取属性个数

function sortObjectArray(arrays){
			arrays.sort(compareAsc);
		}
		//升序
		function compareAsc(obj1,obj2){	
			return  getPropertyLength(obj1)-getPropertyLength(obj2);
		}		
		function getPropertyLength(obj){
			var len=0,property;
			for(property in obj){
				if (obj.hasOwnProperty(property)&&typeof obj[property]!=='function') {
					len++;
				};
			}
			return len;
		}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值