基于字符排序(字符串)Angular 7

时间:2019-03-18 07:22:17

标签: angular

我有对象数组。在这里,我需要在绑定时对值进行排序。

simple.ts

this.data =  
      [
         {
            name : 'C1A5'
         },
         {
            name : 'C1A1'
         },
         {
            name : 'C1A2'
         },
         {
            name : 'C1A4'
         },
         {
            name : 'C1A3'
         },
         {
            name : 'C1A7'
         },
         {
            name : 'C1A6'
         }
      ]

simple.html

 <div class="" *ngFor="let d of data">
      {{d.name}}
</div>

在这里,我该如何排序以在UI中获得以下结果:

 'C1A1'
    'C1A2'
    'C1A3'
    'C1A4'
    'C1A5'
    'C1A6'
    'C1A7'

谢谢。

2 个答案:

答案 0 :(得分:1)

如果您要使用单线解决方案,则对它进行排序的一种方法是在比较函数中使用localeCompare()

this.data.sort((a, b) => a['name'].localeCompare(b['name']));

另外,请用适当的标签标记您的问题。这是一个常见的JavaScript问题,因此您应该使用“ JavaScript”标记它。

答案 1 :(得分:0)

您可以使用.sort()对数组进行排序,例如javascript样式中的角

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