Javascript 从for循环填充对象列表的简写方法

Javascript 从for循环填充对象列表的简写方法,javascript,Javascript,我目前正在使用以下命令来使用for循环填充对象列表: const foo = ['bar', 'hello', 'world'] const things = [] foo.forEach((x) => { things.push({ name: x, age: 1 }) }) 我觉得这有点复杂。在Python中,有一个列表理解的概念,允许我执行以下操作: foo = ['bar', 'hello', 'world'] things =

我目前正在使用以下命令来使用
for
循环填充对象列表:

const foo = ['bar', 'hello', 'world']

const things = []
foo.forEach((x) => {
    things.push({
        name: x,
        age: 1
    })
})
我觉得这有点复杂。在Python中,有一个列表理解的概念,允许我执行以下操作:

foo = ['bar', 'hello', 'world']
things = [{name: x, age:1} for x in foo]

JavaScript中是否有一个等价物?有没有比我的JavaScript代码片段更好的填充
内容的方法?

您可以使用映射对象,并为
名称取一个值

const
foo=['bar','hello','world',],
things=foo.map(name=>({name,age:1}));
console.log(事物)使用

constfoo=['bar','hello','world']
const things=foo.map((name)=>{return{name,age:1});

console.log(事物)
在一个线性箭头函数中不需要
return
。@Barmar-是的,我也计划编辑,但还有一个答案也是这样-不合适。非常感谢。