gpt4 book ai didi

javascript - 使用 lodash 从数组返回对象属性

转载 作者:行者123 更新时间:2023-12-02 23:17:13 25 4
gpt4 key购买 nike

我一直试图通过首先过滤对象来返回对象的属性。这是我所做的:

var characters = [
{ 'name': 'barney', 'age': 36, 'blocked': false },
{ 'name': 'fred', 'age': 40, 'blocked': true },
{ 'name': 'pebbles', 'age': 1, 'blocked': false }
];

_.find(characters, function(chr) {
return chr.age == 40
});

它返回整个对象,因为我想返回特定属性。谁能指导我该怎么做?

任何帮助将不胜感激。

最佳答案

您可以使用 Lodash chaining ability 。顾名思义,它使您能够链接 Lodash 方法调用。 _.filter_.map在这里合适:

const characters = [
{ 'name': 'barney', 'age': 36, 'blocked': false },
{ 'name': 'fred', 'age': 40, 'blocked': true },
{ 'name': 'pebbles', 'age': 1, 'blocked': false },
]

const names = _(characters)
.filter(c => c.age < 40)
.map('name')
.value()

alert(names)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.3.0/lodash.min.js"></script>

<小时/>

郑重声明,这是您在纯 JS 中可以执行的操作:

const characters = [
{ 'name': 'barney', 'age': 36, 'blocked': false },
{ 'name': 'fred', 'age': 40, 'blocked': true },
{ 'name': 'pebbles', 'age': 1, 'blocked': false },
]

const names = characters
.filter(c => c.age < 40)
.map(c => c.name)

alert(names)

关于javascript - 使用 lodash 从数组返回对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25512955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com