Hi All
you might be thinking how to sort arrays inside an array based on element in each of those arrays.By reading this sentence you got confused , isn't it? Yes. Let me explain now in detail
Problem statement:
You have an array which in turn has 2 or any number of arrays. Let us state as Parent Array and 'n' number of children arrays say it as child1,child2,child3 etc
each children array has 3 or any number of elements.assume that child1[badam,pista] and child2[apple,mango] etc
Now we need to sort children arrays by comparing items in each of these children arrays and sort the children array based on alphabetical order resulted by comparing items in each of children array.
Mathematically we have 3 dimensional array. Lets resolve this issue using jquery as follows:
Solution:
Assume the parent array captured in jquery function as mainObject.Parent . Its first item is the array which holds two more arrays inside each of them items are there based on them we need to interchange arrays and sort in alphabetical order.
mainObject.Parent[0].sort(function(itemA,itemB)
{
/*Now we have accessed to first element of the parent array.Inside this array few more arrays are there and we need to sort these arrays in alphabetical order based on the items in each of them*/
if(itemA[0]<itemB[0]) return -1; /*comparing with children array's item, not with children array itself*/
if(itemA[0]>itemB[0]) return 1; /*comparing with children array's item, not with children array itself*/
return 0;
});
Note: you can compare with items as well .It is based on pure requirement .you may compare items like if(itemA<itemB) return -1; like this, But for existing problem statement the above mentioned solution is applicable.
After successful run of the code ,the parent array will be sorted in alphabetical order.The new value of mainObject.Parent will have sorted array based on alphabets
Hope this will help someone
thanks
pradeepa achar
you might be thinking how to sort arrays inside an array based on element in each of those arrays.By reading this sentence you got confused , isn't it? Yes. Let me explain now in detail
Problem statement:
You have an array which in turn has 2 or any number of arrays. Let us state as Parent Array and 'n' number of children arrays say it as child1,child2,child3 etc
each children array has 3 or any number of elements.assume that child1[badam,pista] and child2[apple,mango] etc
Now we need to sort children arrays by comparing items in each of these children arrays and sort the children array based on alphabetical order resulted by comparing items in each of children array.
Mathematically we have 3 dimensional array. Lets resolve this issue using jquery as follows:
Solution:
Assume the parent array captured in jquery function as mainObject.Parent . Its first item is the array which holds two more arrays inside each of them items are there based on them we need to interchange arrays and sort in alphabetical order.
mainObject.Parent[0].sort(function(itemA,itemB)
{
/*Now we have accessed to first element of the parent array.Inside this array few more arrays are there and we need to sort these arrays in alphabetical order based on the items in each of them*/
if(itemA[0]<itemB[0]) return -1; /*comparing with children array's item, not with children array itself*/
if(itemA[0]>itemB[0]) return 1; /*comparing with children array's item, not with children array itself*/
return 0;
});
Note: you can compare with items as well .It is based on pure requirement .you may compare items like if(itemA<itemB) return -1; like this, But for existing problem statement the above mentioned solution is applicable.
After successful run of the code ,the parent array will be sorted in alphabetical order.The new value of mainObject.Parent will have sorted array based on alphabets
Hope this will help someone
thanks
pradeepa achar
Comments