JavaScript实现数组中每个字符串首字母大写的方法求助
解决方法
直接用map遍历数组,对每个字符串做首字母大写 + 剩余部分保留的拼接即可,核心是把charAt(0).toUpperCase()和slice(1)结合起来:
const originalArray = ["hello", "world", "javascript", "beginner"]; const capitalizedArray = originalArray.map(str => { // 先处理空字符串的情况,避免报错 if (!str) return str; return str.charAt(0).toUpperCase() + str.slice(1); }); console.log(capitalizedArray); // 输出 ["Hello", "World", "Javascript", "Beginner"]
为啥你之前的方法没成功?
splice是数组方法,不能直接用来操作字符串(JS里字符串是不可变的),用它处理单个字符串肯定没用。- 用
charAt()的时候,你只取了大写的首字母,没把后面的部分拼上去,加上slice(1)就能拿到从第2个字符开始的所有内容,拼在一起就完整了。
另外补充个小细节:如果原字符串后面有大写字母,想让它们统一变成小写的话,可以再加个toLowerCase():
return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
内容的提问来源于stack exchange,提问作者Nabeel Mansour
相关产品推荐
相关产品推荐

