JS —统计字符数 | 求“单身”数 | 对拼音排序
1.统计字符数
思路:使用 reduce进行累计,利用 undefind的方式来使未出现的字符进行赋值初始值
// 高效统计字符数
var a = 'dfffgfdgsrewrewfwe';
// a[b]++ 如果属于不存在,则会出现 undefind,也就是 nan,通过或的方式得到
let result = a.split('').reduce((a, b) => (a[b]++ || (a[b] = 1), a), {});
console.log(result)
2.求 “单身”数
思路:通过 异或运算的方式,如果值相同,则为0,不相同为1
// 获取单身数
function DSG(array) {
return array.reduce((a, b) => a ^ b, 0)
};
console.log(DSG([9, 2, 2, 6, 5, 6, 5]));
3.对拼音数组进行排序
思路:通过 localeCompare的库,进行排序,如果a.localeCompare(b) ,结果为0 或者 1
// 实现拼音排序
const nameArray = ["娜可露露", "芈月", "韩信", "项羽", "吕布"]
let result1 = nameArray.sort((a, b) => (a.localeCompare(b)))
console.log(result1);