亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在節點 js 中按字母順序對這個對象數組進行排序?

如何在節點 js 中按字母順序對這個對象數組進行排序?

繁星淼淼 2023-04-14 15:17:37
我有一個關于如何按字母順序排列這個對象數組的問題,知道數組的一些元素是小寫的,而其他元素有特殊字符。該數組是:  Product { id: 1, name: 'TV Samsung MP45', price: 325.9, units: 8 },  Product { id: 2, name: 'ábaco de madera (nuevo modelo)', price: 245.95, units: 15 },  Product { id: 3, name: 'impresora Epson', price: 55.9, units: 8 },  Product { id: 4, name: 'USB Kingston 16GB', price: 5.95, units: 45 }我必須用這個形狀按字母順序排序:   Product { id: 2, name: 'ábaco de madera (nuevo modelo)', price: 245.95, units: 15 },   Product { id: 3, name: 'impresora Epson', price: 55.9, units: 8 },   Product { id: 1, name: 'TV Samsung MP45', price: 325.9, units: 8 },   Product { id: 4, name: 'USB Kingston 16GB', price: 5.95, units: 45 }但結果如下:  Product { id: 1, name: 'TV Samsung MP45', price: 325.9, units: 8 },  Product { id: 2, name: 'ábaco de madera (nuevo modelo)', price: 245.95, units: 15 },  Product { id: 3, name: 'impresora Epson', price: 55.9, units: 8 },  Product { id: 4, name: 'USB Kingston 16GB', price: 5.95, units: 45 }為了對數組進行排序,我使用了這樣的排序函數:orderByName(){    return this.products.sort((a,b) => a.name - b.name);        return a.name - b.name;}我已經嘗試了很多事情來讓它與一些帶有特殊字符的單詞和一些小寫字母一起排序。有誰知道任何解決方案?
查看完整描述

1 回答

?
MM們

TA貢獻1886條經驗 獲得超2個贊

String#normalize在將它們與以下內容進行比較之前,您可以調用這兩個名稱localeCompare:


const arr = [

{ id: 1, name: 'TV Samsung MP45', price: 325.9, units: 8 },

{ id: 2, name: 'ábaco de madera (nuevo modelo)', price: 245.95, units: 15 },

{ id: 3, name: 'impresora Epson', price: 55.9, units: 8 },

{ id: 4, name: 'USB Kingston 16GB', price: 5.95, units: 45 }

];


arr.sort((a, b) => a.name.normalize().localeCompare(b.name.normalize()));

console.log(arr);


查看完整回答
反對 回復 2023-04-14
  • 1 回答
  • 0 關注
  • 123 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號