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

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

多個 for 循環(huán)問題

多個 for 循環(huán)問題

慕慕森 2022-09-02 16:58:30
我有兩個數(shù)組鍵和子Grps。使用這兩個創(chuàng)建具有映射鍵到子Grps數(shù)組的新數(shù)組。var keys = ["Subgroup", "0-3", "3-10", "11-40"];var subGrps = ["SP_20k", "SP_40k", "SP_60k"];var arrayOfObjects = [];subGrps.forEach(function(id) {  keys.forEach(function(item) {    if (item === "Subgroup") {      arrayOfObjects.push({        [item]: id      });    } else {      arrayOfObjects.push({        [item]: ""      });    }  });});console.log(arrayOfObjects);預(yù)期輸出:  [{    "Subgroup" : "SP_20k",    "0-3": "",    "3-10": "",    "11-40": ""  },  {    "Subgroup" : "SP_40k",    "0-3": "",    "3-10": "",    "11-40": ""  },  {    "Subgroup" : "SP_60k",    "0-3": "",    "3-10": "",    "11-40": ""  }]forEach是好的選擇嗎?用于對 對象進(jìn)行分組,并獲取該輸出。我錯過了什么來獲得預(yù)期輸出?有人可以幫我嗎?keys arraysubGrps array
查看完整描述

5 回答

?
aluckdog

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

您可以使用 Array.map 循環(huán)訪問數(shù)組,創(chuàng)建一個將鍵設(shè)置為 from 值的對象,并使用 Object.assign 為數(shù)組中的其他條目添加空值:subGrpsSubgroupsubGrpskeys


var keys = ["Subgroup", "0-3", "3-10", "11-40"];

var subGrps = ["SP_20k", "SP_40k", "SP_60k"];


var arrayOfObjects = subGrps.map(v => Object.assign({

    "Subgroup": v

  },

  ...keys.slice(1).map(k => ({

    [k]: ""

  }))

));


console.log(arrayOfObjects);

展開代碼段

這可以簡化為:


var keys = ["Subgroup", "0-3", "3-10", "11-40"];

var subGrps = ["SP_20k", "SP_40k", "SP_60k"];


var arrayOfObjects = subGrps.map(v => Object.assign({},

  ...keys.map(k => ({

    [k]: k == 'Subgroup' ? v : ""

  }))

));


console.log(arrayOfObjects);


查看完整回答
反對 回復(fù) 2022-09-02
?
皈依舞

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

您可以先創(chuàng)建對象,然后在循環(huán)中添加鍵。


var keys = ["Subgroup", "0-3", "3-10", "11-40"];

var subGrps = ["SP_20k", "SP_40k", "SP_60k"];


// creates the object with keys once

// you can also use foreach to create this keysObj too.

var keysObj = keys.reduce((resObj, acc) => {

  resObj[acc] = ''

  return resObj

}, {})


// uses keysObj to generate array of objects

var arrayOfObjects = subGrps.map(subGrp => ({...keysObj, Subgroup: subGrp}))

console.log(arrayOfObjects)


查看完整回答
反對 回復(fù) 2022-09-02
?
翻過高山走不出你

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

如果你想特別對待它,我不知道為什么與其他鍵混在一起,但在這里你去:"Subgroup"


const [sgKey, ...keys] = ["Subgroup", "0-3", "3-10", "11-40"];

const subGrps = ["SP_20k", "SP_40k", "SP_60k"];


const result = subGrps.map(sg => {

  const obj = {

    [sgKey]: sg

  }

  for (const k of keys) {

    obj[k] = ''

  }

  return obj

});


console.log(result)


查看完整回答
反對 回復(fù) 2022-09-02
?
慕妹3146593

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

您需要執(zhí)行以下操作:


var keys = ["Subgroup", "0-3", "3-10", "11-40"];

var subGrps = ["SP_20k", "SP_40k", "SP_60k"];


var arrayOfObjects = [];


subGrps.forEach(function(id) {

  var obj = {}

  keys.forEach(function(item) {

    if (item === "Subgroup") {

      obj[item]= id

      arrayOfObjects.push(obj);

    } else {

      obj[item] = ""

      arrayOfObjects.push(obj);

    }

  });

});


console.log(arrayOfObjects);


查看完整回答
反對 回復(fù) 2022-09-02
?
回首憶惘然

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

試試這個,


const arr = [];


subGrps.forEach(subGrp => {

   const obj = {}

   keys.forEach(key => obj[key] = (key === 'Subgroup') ? subGrp : '' );

   arr.push(obj);

})


console.log(arr)


查看完整回答
反對 回復(fù) 2022-09-02
  • 5 回答
  • 0 關(guān)注
  • 150 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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