我是lodash的初学者,我来自c#,有时我使用LINQ,我了解到lodash可用于查询linq样式,但是尽管我做了尝试,但仍无法从对象数组中获取项目的索引在lodash中具有等于true的布尔属性。
谁能帮我?
我的第一次尝试:
var indexofItemns =_.find( arrayOfItems, (item) =>
(item.booleanProperty === true));
但是,我有一个数组,我这样做:
var indexItems: number[] = [];
indexItems= _.times(
arrayOfItems.length,
_.find( arrayOfItems, (item) => (item.booleanProperty === true));
第二行也不编译。
谢谢
最佳答案
您可以使用纯JS实现相同的目标。
你不需要lodash
const data = [{
booleanProperty: false
},
{
booleanProperty: true
},
{
booleanProperty: false
},
{
booleanProperty: true
},
{
booleanProperty: false
}
];
const indexItems = data.map((item, index) => item.booleanProperty === true ? index : null).filter((item) => item !== null);
console.log(indexItems)