1.判断一个数字是否是回文
function Check(str){ if(!str) return '' return str === Array.from(str).reverse().join('') }
2.统计一个字符串出现最多的字母
function count(str) { let hash = {}, sub = 0 while (1) { let c = str.charAt(sub) if (!c) break !hash[c] ? hash[c] = 1 : hash[c]++ sub++ } return hash }
3.快速找出数组中的最大项
const a = [1,3,5,6,9,11]
Math.max(...a) // 11
Math.min(...a) // 1
4.随机生成制定长度的字符串
Tip:只能是Math.random()*len ,不能是len+1,
Q:如何能保证不重复??hash值怎么出来
function randomStr(n) { let base = 'abcdefghijklmnopqistuvwxyz9876543210', len = base.length, str = ''; for (let i = 0; i < n; i++) { str += base.charAt(Math.floor(Math.random() * len)) } return str; }
randomStr(10) //1k82a33xmp
5.获取指定范围内的随机数80-100
Tip:Math.random 生成[0,1),右侧为开区间
Math.floor(Math.random()*(100-80+1)+80)
6.随机获取数组中的元素, 6代表实际数组的长度
[1,3,5,7,9,10][Math.floor(Math.random()*6)]
7.找到句子中最长的单词,并计算它的长度,MDN上的解释 Array.prototype.sort
'kong de sheng'.split(' ').sort((a,b)=>b.length - a.length)[0]
8.确保字符串中每个首字母大写
'kong de sheng'.split(' ').map(r=>r.charAt(0).toUpperCase()+r.substring(1)).join(' ')
此处省略一万字,累死了,结束