2129. 将标题首字母大写
给你一个字符串 title ,它由单个空格连接一个或多个单词组成,每个单词都只包含英文字母。请你按以下规则将每个单词的首字母 大写 :
- 如果单词的长度为
1或者2,所有字母变成小写。 - 否则,将单词首字母大写,剩余字母变成小写。
请你返回 大写后 的 **
title。
错误1
修改切分后的字符串尝试使用str in splitArray,这样str 并不是数组元素的值,而是数组元素的索引。
for (str in splitArray){
if([...str].length <= 2){
str = str.toLowerCase()
}
else{
str = str[0].toUpperCase() + str.slice(1).toLowerCase()
}
}
}
正确的写法应该是使用 for (let i = 0; i < splitArray.length; i++)通过splitArray[i]访问并原地修改。
错误2
重新拼接字符串时尝试使用
var res = ''
for (str in splitArray){
res += str
}
同样仅仅访问到了数组下标,应该通过of去访问
for (const str of splitArray){
res += str + ' '
}