Avatar ·

如何在JavaScript中处理字符串?

大家好!我在使用Node.js时遇到了字符串处理的问题。需要实现一个函数,它接受一个字符串数组并返回格式化输出:用逗号连接字符串,但最后一个元素应该用连词“和”分隔。例如:['яблоко', 'банан', 'апельсин'] → 'яблоко, банан и апельсин'。

我尝试过使用Array.prototype.join(', '),但它会在最后一个元素前加逗号,而需要将其替换为“ и”。我尝试手动通过for循环加索引检查来编写,但代码变得冗长且没有考虑边界情况(空数组、单个元素)。

这是我当前的代码:

function formatList(arr) {
  if (arr.length === 0) return '';
  if (arr.length === 1) return arr[0];
  let result = '';
  for (let i = 0; i < arr.length; i++) {
    if (i === arr.length - 1) {
      result += ' и ' + arr[i];
    } else {
      result += arr[i] + ', ';
    }
  }