第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將嵌套數(shù)組元素轉(zhuǎn)換為字符串?dāng)?shù)組

將嵌套數(shù)組元素轉(zhuǎn)換為字符串?dāng)?shù)組

阿晨1998 2021-12-02 14:57:54
給定一個簡單的嵌套數(shù)組數(shù)組,如下所示:[  ['a','b',],  ['c','d'],  ['e']]我希望連接每個元素的值并創(chuàng)建一個這樣的數(shù)組:['.a.c.e','.a.d.e','.b.c.e','.b.d.e']這只是一個簡單的例子,但實際上可能有 3 個以上的嵌套數(shù)組和任意數(shù)量的元素??雌饋硭鼞?yīng)該相對簡單,但我就是無法解決它,任何人都可以幫忙嗎?
查看完整描述

1 回答

?
幕布斯6054654

TA貢獻(xiàn)1876條經(jīng)驗 獲得超7個贊

由于數(shù)組長度未知,最好的方法是使用遞歸:


function conc(input) {

  const output = [];

  function _conc(input, partial) {

    if (input.length === 0) {

      return output.push(partial);

    }

    const [first, ...rest] = input;

    first.forEach(itm => {

      _conc(rest, partial + "." + itm)

    });

  }

  _conc(input, "");

  return output;

}


const input = [

  ['a','b',],

  ['c','d'],

  ['e']

]


console.log(conc(input))


或與flatMap:


function conc(input) {

  const [first, ...rest] = input;

  return rest.length === 0

    ? first.map(itm => "." + itm)

    : first.flatMap(itm => conc(rest).map(_itm => "." + itm + _itm));

}


const input = [

  ['a','b',],

  ['c','d'],

  ['e']

]


console.log(conc(input))


或減少:


const input = [

  ['a','b',],

  ['c','d'],

  ['e']

]


console.log(

  input.reduce((acc, a) => acc.flatMap(i1 => a.map(i2 => i1 + "." + i2)), [""])

)


查看完整回答
反對 回復(fù) 2021-12-02
  • 1 回答
  • 0 關(guān)注
  • 157 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號