亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如何返回對象中的屬性并按順序排列它們?

如何返回對象中的屬性并按順序排列它們?

江戶川亂折騰 2021-11-18 19:59:14
鑒于這兩個數組:var amounts = [9, 1, 8, 16, 5, 1, 42]var animals = ["ducks", "elephants", "pangolins", "zebras", "giraffes", "penguins", "llamas"]我必須編寫一個函數,它接受兩個變量并返回一個組合字符串。預期的輸出是:"9 ducks 1 elephants 8 pangolins 16 zebras 5 giraffes 1 penguins 42 llamas"我創建了一個類似于預期字符串的對象。我現在需要按該順序打印屬性。function animalsAmounts(arr1, arr2){    let object = {};    arr2.forEach((arr2, i) => object[arr2] = arr1[i]);    return object    let result = Object.keys(object).map(function(key) {        return [Number(key), obj[key]];    }); return result}console.log(animalsAmounts(amounts, animals))它打?。簕 ducks: 9,  elephants: 1,  pangolins: 8,  zebras: 16,  giraffes: 5,  penguins: 1,  llamas: 42 }我不知道如何將預期結果作為字符串返回。我嘗試了各種方法來記錄數量和動物,但只能返回一種或另一種。
查看完整描述

2 回答

?
Smart貓小萌

TA貢獻1911條經驗 獲得超7個贊

Array.prototype.join()從數組的項目中創建一個字符串,將它們與您選擇的任何內容連接起來。


animals.map((a, i) => `${amounts[i]} ${a}`).join(" ")


var amounts = [9, 1, 8, 16, 5, 1, 42]

var animals = ["ducks", "elephants", "pangolins", "zebras", "giraffes", "penguins", "llamas"]


console.log(animals.map((a, i) => `${amounts[i]} ${a}`).join(" "))


查看完整回答
反對 回復 2021-11-18
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

您可以對同一索引處的任意數組和映射值采用動態方法,然后再連接到單個字符串。


var amounts = [9, 1, 8, 16, 5, 1, 42]

var animals = ["ducks", "elephants", "pangolins", "zebras", "giraffes", "penguins", "llamas"],

    result = [amounts, animals]

        .reduce((r, a) => a.map((v, i) => (r[i] ? r[i] + ' ' : '') + v), [])

        .join(' ');


console.log(result);


查看完整回答
反對 回復 2021-11-18
  • 2 回答
  • 0 關注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號