Home > Article > Web Front-end > Various uses of Sort() function_javascript skills
The sort() method is used to sort the elements of an array. Contained in the header file algorithm
Grammar
arrayObject.sort(sortby)
参数 | 描述 |
---|---|
sortby | 可选。规定排序顺序。必须是函数。 |
Return value
A reference to an array. Please note that the array is sorted on the original array, no copy is made.
1. Default situation
By default, the sort() method sorts array items in ascending order. To achieve sorting, the sort() method calls the toString() conversion method of each array item and then compares the resulting strings to determine how to sort. As follows:
var values = ["orange","apple","banana"]; values.sort(); console.log(values);//结果["apple", "banana", "orange"]
However, even if each item in the array is a numeric value, the sort() method compares strings, as follows:
var values = [,,,,]; values.sort(); console.log(values);//结果[, , , , ]
2. Sort the values
The sort() method can receive a comparison function as a parameter.
The comparison function receives two parameters. If the first parameter should be before the second parameter, it returns a negative number. If the two parameters are equal, it returns 0. If the first parameter is after the second parameter, it returns a positive number. .
function compare(a, b){ return (a - b); }//按升序排列的比较函数 var values = [,,,,]; values.sort(compare); console.log(values);//结果[, , , , ]
3. Sort the array according to an object attribute
First define a function, which receives an attribute name, and then creates a comparison function based on this attribute name. Here is the definition of this function:
function createComparisonFunction(propertyName){ return function(object, object){ var a = object[propertyName]; var b = object[propertyName]; if(a < b){ return -; }else if(a > b){ return ; }else{ return ; } } }//返回一个根据属性名创建的按升序排列的比较函数
After the internal function receives the propertyName parameter, it will use square bracket notation to get the value of the given property.
The above function can be used like in the example below.
var data = [{name:"Lily", age: }, {name:"Judy", age: }]; data.sort(createComparisonFunction("name")); console.log(data[].name);//Judy data.sort(createComparisonFunction("age")); console.log(data[].name);//Lily
The above content is the various uses of the Sort() function introduced by the editor. I hope it will be helpful to you!