系列文章
- [ CodeWar ] - 001:过滤重复字符
- [ CodeWar ] - 002:最大和最小值
- [ CodeWar ] - 003:判断质数
- [ CodeWar ] - 004:处理数组元素
- [ CodeWar ] - 005:用户分组
- [ CodeWar ] - 006:数组比对
- [ CodeWar ] - 007:找不同
- [ CodeWar ] - 008:分割字符串
- [ CodeWar ] - 009:哈希标签生成器
题目
需求:
- 以
#开头 - 每个单词的首字母需要大写
- 如果最终字符串长度超过
140,则返回false - 如果输入的是一个空字符串,则返回
false
解析
这道题的思路比较常规:
- 将字符串以空格分割成数组
- 将数组的每个元素首字母转大写
- 再将数组转成字符串
- 然后在最终的字符串前面加上
#即可 - 至于长度和空字符串的判断,可以统一在字符串处理完成之后进行判断
function generateHashtag(str) {
const ret = str
.split(" ")
.map((c) => `${c.charAt(0).toLocaleUpperCase()}${c.slice(1)}`)
.join("");
return ret.length === 0 || ret.length > 139 ? false : `#${ret}`;
}