首页 > 解决方案 > 如何在不使用 .join() 的情况下加入字符串数组?

问题描述

我们正在尝试编写一个函数,该函数接受一个字符串数组和一个分隔符,并将由该分隔符分隔的所有字符串连接起来。

我们不允许使用 .join() 方法。

到目前为止,我一直在尝试迭代所有字符串,每次都在它们之间添加一个分隔符。

我试过类似的东西:

var aName = ['Frank','Vincent','Zappa'];


var join = (arr, separator = " ") => {
    for(var i = 0; i < arr.length; i++) {
        return arr[i] + separator + arr[i+1];
    }
};

join(aName, ' '); 

//output: "Frank Vincent"
//expected output: "Frank Vincent Zappa"

谢谢你的帮助。

标签: javascript

解决方案


要修复您当前的代码,请尝试连接,并且return仅在最后:

var aName = ['Frank', 'Vincent', 'Zappa'];


var join = (arr, separator = " ") => {
  let result = '';
  for (var i = 0; i < arr.length; i++) {
    if (result) {
      result += separator;
    }
    result += arr[i];
  }
  return result;
};

console.log(join(aName, ' '));


推荐阅读