JS对象数组多条件排序

JavaScript08

JS对象数组多条件排序,第1张

JS数组多条件排序基于Array.sort()方法,首先要了解sort()方法的用法。

sort()方法可以传入一个函数作为参数,然后依据该函数的逻辑,进行数组的排序。

eg:

sort()方法接收函数作为参数时,排序主要根据传入函数的返回值是否大于0进行排序。

1)当 a-b <0时,则a元素排在b元素的前面;(a、b元素位置不变)

2)当a-b= 0时,a,b元素的位置不变;

3)当a-b >0时,则b元素排在a元素的前面。(a、b元素位置交换)

当数组元素为对象时,若要根据对象的多个属性进行排序,就涉及到多条件排序。

之前在做多条件筛选时用到了对象,多条件筛选的思路,并总结了几个关于对象的操作

var array = new Object()

创建一个空对象用来存储你传的参数,就是每个点击事件都要传参且也要将参数存储起来

同时筛选里面也会涉及到清空参数以及删除某一个值,例子:

var array={"name": "xiaojiayu", "age": 24, "gender": "man","sex":""}

 1、删除对象里某一个值

delete array.name            

2、清空对象

for(var key in array){

    delete array[key]          

}

 3、清除对象里空的键值对

for(var key in array){

    if(array[key] === ""){

        delete array[key]          

    }

}

具体可以按这个步骤操作:

if(a==1&&b==2){

//do something

}//条件是a等于1  并且  b等于2时才能成立,两个条件必须同时满足

if(a==1||b==2){

//do something

}//条件是a等于1  或者  b等于2时才能成立,两个条件满足一个就行

if(a==1){

//do something

}else if(b==2){

//do something

}

else if(c==3){

//do something

}else{

//do something

}

//这是有多个可能是用这种方式,

补充一个可能:

if ( '001' == FormId ||'002'==FormId||'003'== FormId ){...}