JavaScript & localeCompare

403 阅读1分钟
之前查看了JavaScript文档,发现了一个不曾遇见的方法,就是localeCompare,虽然不曾遇见但是发现其在开发频率中还是很高的,于是单独拿出来跟大家分享一下。

localeCompare是 字符串 的对比方法,这个方法返回的是数字分别为-1,0,1来表示目标 字符串 与 对比字符串的排序情况。除sort排序外,在 字符串 、对象数组排序中很方便。

    // basic example:
    let targetStr = 'x';
    let strA = 'a';
    let strY = 'y';
    let strXYZ = 'xyz';
    targetStr.localeCompare(StrA);  // 1
    targetStr.localeCompare(StrY);  // -1
    targetStr.localeCompare(strXYZ);  // -1
    const objectName = [
      { first_name: "LeBron", last_name: "James" },
      { first_name: "Kobe", last_name: "Bryant" },
    ];
    objectName.sort((a, b) => a.last_name.localeCompare(b.last_name));
    // 1.  (2) [{…}, {…}]
            0: {first_name'Kobe'last_name'Bryant'}
            1: {first_name'LeBron'last_name'James'}
            length2
            [[Prototype]]: Array(0)

8.24 致敬科比!