生成长度为10的随机字符串
Math.random().toString(36).substring(2);
取整
let a = ~~2.33 ----> 2
let b = 2.33 | 0 ----> 2
let c = 2.33 >> 0 ----> 2
注意位运算符是先取整再做位运算,两个需要运算的值会被先转为有符号的32位整型,超过32位的整数会被截断,小数部分则会被直接舍弃。
单词转驼峰
let str = 'this is test string';
str.replace(/\s(\w)/g, ($1, $2) => $2.toUpperCase()); // thisIsTestString
金钱格式化
// 正则
let test1 = '1234567890'
let format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
// reduce
function formatCash(str) {
return str.split('').reverse().reduce((prev, next, index) => {
return ((index % 3) ? next : (next + ',')) + prev
})
}