1. 计算某字母出现次数
const str = 'hello nowcoder';
const l = str.split(' ').reverse().shift().length;
console.log(l)
2. 计算某字母出现次数
function times(str, match) {
var reg = new RegExp(match, 'gi');
return str.match(reg).length;
}
console.log(times('ABCabc0', 'A'))
3. 明明的随机数
function rand(num) {
const arr = [];
for (let i = 0; i < num; i++ ) {
arr.push(Math.floor(Math.random() * 1000) + 1)
}
const norepeat = [...new Set(arr)]
return norepeat.sort(function(a,b) {
return a - b;
})
}
console.log(rand(3))
console.log(rand(11))
4. 字符串分隔
function sp(input) {
const strNoBlank = input.split(' ').join('');
const l = strNoBlank.length;
const times = Math.ceil(l / 8);
const isInt = l % 8 === 0;
const arr = [];
for (let i = 0; i < times; i++) {
arr.push(strNoBlank.slice(i * 8, (i + 1) * 8));
}
if (!isInt) {
let last = arr[arr.length - 1];
const zero = 8 - last.length;
let zeroStr = '';
for (let i = 0; i < zero; i++) {
zeroStr += '0';
}
last += zeroStr;
arr[arr.length - 1] = last;
}
return arr;
}
console.log(sp('abc'))
console.log(sp('123456789'))
5. 进制转换
function convert(str) {
return parseInt(str, 16);
}
console.log(convert('0xA'))
console.log(convert('0xAA'))
6. 质数因子
function commit(num) {
let a = '';
for (let i = 2; i <= num; i++) {
if (num % i === 0) {
num = num / i;
a = a + '' + i + ' ';
i = 1;
}
}
return a;
}
console.log(commit(180));
7. 取近似值
function near(num) {
return Math.round(num)
}
console.log(near(5.5))
8. 合并表记录
10. 字符个数统计
function count(str) {
return [...new Set(str)].length;
}
console.log(count('abc'))
15. 求int型正整数在内存中存储时1的个数
function convert(num) {
return num.toString(2);
}
console.log(convert(5).split('0').length)