Estoy tratando de hacer una combinación cartesiana posible a partir de una matriz de matrices, pero me quedé atascado en un punto. Tengo una matriz algo como esto:
0: ['Blue'] 1: ['Small'] var result = values.reduce((a, b) => a.reduce((r, v) => r.concat(b.map(w => [].concat(v, w))), [])); var cartesianProduct = result.map(a => a.join('-')); con la ayuda de map reduce obtengo el resultado como: 0: "Blue-Small" que no está mal. pero lo que quiero es algo como esto:
0: ['Blue-Small'] 1: ['Small-Blue']y debe ser dinámico. Significa que si tengo una matriz algo como esto:
0: ['Blue'] 1: ['Small'] 2: ['New']entonces debería devolver algo como esto:
0: ['Blue-Small-New'] 1: ['Small-Blue-New'] 2: ['New-Small-Blue'] 3: ['Blue-New-Small'] 4: ['Small-New-Blue'] 5: ['New-Blue-Small']¿Cómo es posible obtener un resultado como este?