【发布时间】:2021-07-23 06:30:31
【问题描述】:
我有一个对象items = {a:"arr", b:"brr", c: "3"}。
我想把它变成一个数组,但是乘以c。
所以如果items = {a:"arr", b:"brr", c: "3"}我想得到:
["arr brr","arr brr","arr brr"].
【问题讨论】:
标签: javascript arrays object
我有一个对象items = {a:"arr", b:"brr", c: "3"}。
我想把它变成一个数组,但是乘以c。
所以如果items = {a:"arr", b:"brr", c: "3"}我想得到:
["arr brr","arr brr","arr brr"].
【问题讨论】:
标签: javascript arrays object
可以使用Array.from()生成一个数组,其值为c的长度:
const items = {a:"arr", b:"brr", c: "3" }
const result = Array.from(
{ length: +items.c },
() => `${items.a} ${items.b}`
)
console.log(result)
使用Array.flatMap() 和Array.from() 来处理对象数组:
const items = [{a:"arr", b:"brr", c: "3" },{a:"ann", b:"bnn", c: "1" }]
const result = items.flatMap(obj => Array.from(
{ length: +obj.c },
() => `${obj.a} ${obj.b}`
))
console.log(result)
【讨论】:
使用Array构造函数和fill()方法,一行代码就可以实现:
const items = {a:"arr", b:"brr", c: "3"}
const arr = new Array(+items.c).fill(`${items.a} ${items.b}`)
console.log(arr)
【讨论】: