📌  相关文章
📜  网络技术问题 | JavaScript 课程测验 1 |问题2(1)

📅  最后修改于: 2023-12-03 15:27:40.238000             🧑  作者: Mango

网络技术问题 | JavaScript 课程测验 1 |问题2

问题描述

你需要完成一个 JavaScript 函数,该函数输入一个字符串数组 arr,返回一个新的数组,其中所有字符串的首字母均为大写。

注意事项:

  • 原数组不应该被修改。
  • 返回的数组不应该包含空字符串。

函数签名:

/**
 * @param {string[]} arr
 * @return {string[]}
 */
function capitalizeFirst(arr) {

}
解题思路
  • 创建一个新数组,遍历原数组中的每一个字符串
  • 将每个字符串首字母转换为大写字母,然后将新字符串添加到新的数组中
  • 返回新的数组
代码实现
/**
 * @param {string[]} arr
 * @return {string[]}
 */
function capitalizeFirst(arr) {
  const newArr = [];
  for (let i = 0; i < arr.length; i++) {
    const str = arr[i];
    if (str) {
      const newStr = str.charAt(0).toUpperCase() + str.slice(1);
      newArr.push(newStr);
    }
  }
  return newArr;
}
测试用例
console.log(capitalizeFirst(['hello', 'world'])); // ['Hello', 'World']
console.log(capitalizeFirst(['a', 'b', 'c'])); // ['A', 'B', 'C']
console.log(capitalizeFirst(['foo', 'bar', 'baz', ''])); // ['Foo', 'Bar', 'Baz']
console.log(capitalizeFirst([])); // []