遍历字符串数组并获取新字符串

时间:2018-07-11 05:55:56

标签: javascript

假设我有一个数组名称= [“ CAT”,“ DOG”],我想遍历此数组以获取新名称。要获得新名称,请将猫的“ C”与“ DOG”的“ D”进行比较,因为“ C”在“ D”之前,所以首字母为“ C”。

然后,我们将CAT的“ A”与“ DOG”的“ D”进行比较,再次“ A”出现,因此第二个单词将是“ A”。到目前为止,单词是:“ CA”。

然后我们将“ CAT”的“ T”与“ DOG”的“ D”进行比较,这次,“ D”在“ T”之前,因此第三个单词将是“ D”,依此类推。

最后一个单词将是:CADOGT

谢谢。

1 个答案:

答案 0 :(得分:1)

正如我在评论中所写,您可以

  • 获取结果集,
  • 下一次编译的变量和
  • 注明长度
  • 采用第一个数组的一个字符
  • 检查并分配并保存剩余字符;
  • 对其他阵列执行相同的操作,
  • 继续下一个索引。
  • ,然后使用剩余的字符。

var array = ["CAT", "DOG"],
    temp = '',
    result = '',
    i,
    l = Math.max(...array.map(s => s.length));
    
for (i = 0; i < l; i++) {
    array.forEach(s => {
        if (!s[i]) { // early exit for smaller strings
            return;
        }
        if (temp < s[i]) {
            result += temp;
            temp = s[i];
        } else {
            result += s[i];
        }
    });
}

result += temp;

console.log(result);