Home  >  Article  >  Web Front-end  >  How to use JS to sort json object array by object properties

How to use JS to sort json object array by object properties

php中世界最好的语言
php中世界最好的语言Original
2018-05-28 15:33:591455browse

This time I will show you how to use JS to sort json object arrays by object properties, and how to use JS to sort json object arrays by object properties. What are the precautions?The following is a practical case, let’s take a look take a look.

In actual work, such a problem often occurs: there are i json data in an array returned in the background, and we need to sort the array according to a certain item in the json.

For example, the returned data structure is probably like this:

{
  result:[
   {id:1,name:'中国银行'},
   {id:3,name:'北京银行'},
   {id:2,name:'河北银行'},
   {id:10,name:'保定银行'},
   {id:7,name:'涞水银行'}
  ]
}

Now we need to sort according to the size of the id according to business needs, and rearrange the array in the order of json with a small id to json with a large id. The order

Add the sorting method in js:

HereUse JavaScript sort() method, first explain the sort method

Syntax: arrayObject.sort(sortby)

sortby: Optional, specifies the sorting order. Must be a function.

If this method is called without parameters, the elements in the array will be sorted alphabetically, or more precisely, in character encoding order. To achieve this, the elements of the array should first be converted to strings (if necessary) for comparison.

If you want to sort by other criteria, you need to provide a comparison function, which compares two values ​​and returns a number that describes the relative order of the two values. The comparison function should have two parameters a and b, and its return value is as follows:

If a is less than b, a should appear before b in the sorted array, then a value less than 0 is returned.
If a is equal to b, return 0.
If a is greater than b, return a value greater than 0.

Let’s start using sort(sortby) to perform this sorting and print it to the console:

function sortId(a,b){
  return a.id-b.id
}
result.sort(sortId);
console.log(result);

Complete test sample code:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>www.jb51.net json数组排序</title>
</head>
<body>
<script>
var result = [
   {id:1,name:'中国银行'},
   {id:3,name:'北京银行'},
   {id:2,name:'河北银行'},
   {id:10,name:'保定银行'},
   {id:7,name:'涞水银行'}
  ]
function sortId(a,b){
  return a.id-b.id
}
result.sort(sortId);
console.log(result);
</script>
</body>
</html>

Then Check the console, the sorting is successful:

# I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the PHP Chinese website!

Recommended reading:

Detailed explanation of the steps for getting started with vuex

How to use vuex advancedly

Detailed explanation of optimization steps using vue-admin-template

The above is the detailed content of How to use JS to sort json object array by object properties. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn