Javascript基于数字键对对象数组进行排序

Jor*_*ash 2 javascript

我有一个对象数组,如下所示:

var data = [
 {
   title: 'Shirt',
   position: 3
 },
 {
   title: 'Ball',
   position: 1,
 }
]
Run Code Online (Sandbox Code Playgroud)

我怎么能把它分类用于for loop这样的.

for(var i in data) {

}
Run Code Online (Sandbox Code Playgroud)

我试过了:

for(var i in data | orderBy:'position')

但这是有角度的正常Javascript它不起作用.

我认为他们必须在循环之前对数组进行排序,或者在循环中添加过滤器,不确定哪种方法最好.

Nul*_*ter 10

但这是有角度的正常Javascript它不起作用.

您只需使用JavaScript 排序功能即可.它也适用于Angular(TypeScript).

注意:排序数字时,您可以简单地使用紧凑比较:

myArray.sort((n1,n2) => n1 - n2);

var data = [
 {
   title: 'Shirt',
   position: 3
 },
 {
   title: 'Ball',
   position: 1,
 }
];

 data.sort(function(a, b) { 
return a.position- b.position;
})

console.log(data);
Run Code Online (Sandbox Code Playgroud)