Mix array value javascript

I have an array which has nested array like this

const arr = [[red,green],[house,roof,wall]]

Is there any way to mix the nested array so output will be like this

red house, red roof, red wall, green house, green roof, green wall

2 answers

  • answered 2022-05-04 09:52 N.S

    Please check below code

    const arr = [['red','green'],['house','roof','wall']];
    const array1 = arr[0];
    const array2 = arr[1];
    const new_arr = [];
    for(let i=0; i< array1.length; i++){
        for(let j=0; j< array2.length; j++){
            new_arr.push(array1[i] + ' ' +array2[j]);
        }
    }
    console.log(new_arr); 
    // output ['red house', 'red roof', 'red wall', 'green house', 'green roof', 'green wall']
    console.log(new_arr.join(',')); 
    // output: red house, red roof, red wall, green house, green roof, green wall

  • answered 2022-05-04 10:03 0stone0

    A nested map() with 2 join()'s to make it a string

    const arr = [ [ 'red', 'green' ],['house','roof','wall']];
    
    const res = arr[0].map(a => arr[1].map(b => `${a} ${b}`).join(', ')).join(', ');
    
    console.log(res);

How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum