根据后端返回的数据进行中文排序操作
最近遇到后端直接给我返回数据类似城市列表,然后需要根据返回的数据进行中文排序,并展示
如图
const arr = [ {brandimg: "http://dummyimage.com/500x500/f2799c/fff.jpg&text=jjokok ", brandname: "北京", brandid: 2124}, {brandimg: "http://dummyimage.com/500x500/f2799c/fff.jpg&text=jjokok ", brandname: "上海", brandid: 2124}, {brandimg: "http://dummyimage.com/500x500/f2799c/fff.jpg&text=jjokok ", brandname: "广州", brandid: 2124} ] pySegSort=(arr) =>{ if (!String.prototype.localeCompare) return null let letters = 'abcdefghjklmnopqrstwxyz'.split('') let zh = '阿八茶哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀'.split('') let segs = [] letters.map((item, i) => { let cur = { letter: item, data: [] } arr.map((item) => { if(item.brandname.localeCompare(zh[i])>=0&&item.brandname.localeCompare(zh[i+1])<0){ cur.data.push(item) } return '' }) if (cur.data.length) { cur.data.sort(function(a, b) { return a.brandname.localeCompare(b, 'zh') }) segs.push(cur) } return '' }) return segs }
渲染结果就没写了直接上图 最终展示结果
一辈子说长不长,说短不短,努力做好两件事:第一件事爱生活,爱身边的人,爱自己;第二件事是好好学习,好好工作,实现自己的人生价值观,而不仅仅是为了赚钱