可以用来做分类和排序
1.声明拼音可能的首字母
// 拼音声母可能的首字母
const Letters = [...'ABCDEFGHJKLMNOPQRSTWXYZ'];
// 拼音声母对应的边界中文
const BoundaryChar = [...'驁簿錯鵽樲鰒餜靃攟鬠纙鞪黁漚曝裠鶸蜶籜鶩鑂韻糳'];
2.判断函数
export function getPinYin(str) {
// 空字符串直接返回
if (!str) return '';
if (str.length > 1) return [...str].map(getPinYin).join('');
// 判断字符是否为中文,不是中文返回原字符
if (/[^\u4e00-\u9fa5]/.test(str)) return str;
const index = BoundaryChar.findIndex(char => char.localeCompare(str, 'zh-CN-u-co-pinyin') >= 0);
return Letters[index];
}
1409

被折叠的 条评论
为什么被折叠?



