Javascript 对对象数组进行数字排序

Javascript 对对象数组进行数字排序,javascript,arrays,sorting,object,Javascript,Arrays,Sorting,Object,我有一个包含对象的数组,我想按名称对它们进行排序: myArray=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}] 当我应用这样的排序方法时 myArray.sorta,b=>a.name>b.name?1:b.name>a.name-1 : 0; 它在1点之后给我10分 myArray = [{name: 'name1'}, {name: 'name10'}, {name: 'name3'}, {name: 'nam

我有一个包含对象的数组,我想按名称对它们进行排序:

myArray=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}] 当我应用这样的排序方法时

myArray.sorta,b=>a.name>b.name?1:b.name>a.name-1 : 0; 它在1点之后给我10分

myArray = [{name: 'name1'}, {name: 'name10'}, {name: 'name3'}, {name: 'name9'}]

我能解决这个问题吗?

如果您想按末尾的数字对名称进行排序:

myArray=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}] myArray.sorta,b=>{ 设aNumber=a.name.match/\d+$/,bNumber=b.name.match/\d+$/; 编号(&B) 返回parseIntNumber[0]-parseIntbNumber[0]; 其他的 返回a-b; };
console.logmyArray 如果要按末尾的数字对名称进行排序:

myArray=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}] myArray.sorta,b=>{ 设aNumber=a.name.match/\d+$/,bNumber=b.name.match/\d+$/; 编号(&B) 返回parseIntNumber[0]-parseIntbNumber[0]; 其他的 返回a-b; }; console.logmyArray 你可以选择

常量数组=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}]; array.sort{name:a},{name:b}=> a、 localeCompareb,未定义,{numeric:true,敏感度:'base'} ; console.logarray; .作为控制台包装{最大高度:100%!重要;顶部:0;}您可以使用选项

常量数组=[{name:'name10'},{name:'name9'},{name:'name1'},{name:'name3'}]; array.sort{name:a},{name:b}=> a、 localeCompareb,未定义,{numeric:true,敏感度:'base'} ; console.logarray;
。作为控制台包装器{max height:100%!important;top:0;}您的1应该是01您的1应该是01欠压的,您需要解释…为什么它被否决?@MajedBadawi尝试将其中一个字段仅命名。它将作出回应error@yash可以看到上面的评论。@MajedBadawi您不需要[0]低估,您需要解释…为什么它被否决?@MajedBadawi尝试仅将其中一个字段命名。它将作出回应error@yash可以看到上面的评论。@MajedBadawi您不需要[0]这是一个很好的解决方案这是一个很好的解决方案