【问题标题】:Transform and concatenate multiple arrays using one value from each使用每个数组的一个值转换和连接多个数组
【发布时间】:2014-10-28 22:46:54
【问题描述】:

我有三个包含 CSS 类名字符串的数组。

我需要从这些数组中的每一个中提取一个字符串,并将其与其他两个数组中的值组合,以形成所有可能的唯一字符串组合。

这是我需要转换的数组:

var array_one = [
  ".cat-616", 
  ".cat-1146", 
  ".cat-1144"
];
var array_two = [
  ".hair-light-brown", 
  ".hair-red"
];
var array_three = [
  ".eyes-hazel", 
  ".eyes-dark-brown", 
  ".eyes-blue-green"
];

我需要形成的字符串是:

'.cat-616.hair-light-brown.eyes-hazel',
'.cat-616.hair-light-brown.eyes-dark-brown',
'.cat-616.hair-light-brown.eyes-blue-green',
'.cat-616.hair-light-red.eyes-hazel',
'.cat-616.hair-light-brown.eyes-hazel',
'.cat-616.hair-light-brown.eyes-dark-brown',
'.cat-616.hair-light-brown.eyes-blue-green',
'.cat-1146.hair-light-brown.eyes-hazel',
'.cat-1146.hair-light-brown.eyes-dark-brown',
'.cat-1146.hair-light-brown.eyes-blue-green',
'.cat-1146.hair-red.eyes-hazel'

…etc.

如何遍历这些数组以形成字符串组合?我的想法是 Lodash 可以用于转换这些数组?

【问题讨论】:

标签: javascript arrays concatenation lodash


【解决方案1】:

有更多的“科学”方法可以做到这一点,但为什么这样的方法不起作用?

for (var i = 0; i < array_one.length; i += 1) {
  for (var j = 0; j < array_two.length; j += 1) {
    for(var k = 0; k < array_three.length; k += 1) {
      console.log(array_one[i] + array_two[j] + array_three[k]);
    }
  }
}

【讨论】:

    猜你喜欢
    • 2021-11-01
    • 1970-01-01
    • 2017-03-30
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多