sort与localeCompare配合排序

2019-01-28  本文已影响0人  AAA前端
async dealSort() {
    let list = await this._dealCheck();  // 获取含有英文品牌的数组

    let obj = {}

    // A-Z 字母排序
    for (let i in list) {
      list = list.sort(function(a, b) {
        return a.firstLetter.localeCompare(b.firstLetter)     // 首字母比较排序
      })
    }

    // 把 A-Z 字母开头的 品牌 分别放到对应的  字母对象里面
    for (let i in list) {
      obj[list[i].firstLetter] ? obj[list[i].firstLetter].push(list[i]) : obj[list[i].firstLetter] = [list[i]]
    }

    // A-Z 每个字母对象 里面 按brandName排序
    for (let j in obj) {
      obj[j].sort(function(a, b) {
        return a.brandName.localeCompare(b.brandName)
      })
    }
  return obj  // 获得排好序之后的字母对象
}
    // A-Z 字母排序
    for (let i in list) {
      list = list.sort(function(a, b) {
        return a.firstLetter.toUpperCase().localeCompare(b.firstLetter.toUpperCase())
      })
    }

    // 把 A-Z 字母开头的 品牌 分别放到对应的  字母对象里面
    for (let i in list) {
      obj[list[i].firstLetter] ? obj[list[i].firstLetter].push(list[i]) : obj[list[i].firstLetter] = [list[i]]
    }

    // A-Z 每个字母对象 里面 按brandName排序
    for (let j in obj) {
      obj[j].sort(function(a, b) {
        return a.brandName.toUpperCase().localeCompare(b.brandName.toUpperCase())
      })
    }
上一篇 下一篇

猜你喜欢

热点阅读