gpt4 book ai didi

javascript - 试图找出该功能不起作用的原因

转载 作者:行者123 更新时间:2023-12-02 22:46:36 29 4
gpt4 key购买 nike

我编写了一个过滤函数,它应该过滤对象数组,并且它确实过滤了它,但结果变量没有获得过滤后的数组。

数组示例:

hotels: [{
photo: "/some_address/some_photo.png",
name: "Hotel Moscow Name",
address: "Moscow, some street, 1",
amenities: [{
name: 'wi-fi'
}, {
name: 'bar'
}, {
name: 'pool'
}, {
name: 'transfer'
},
{
name: 'bath'
}, {
name: 'breakfast'
}, {
name: 'spa'
}
],
price: 3000
},
{
photo: "/some_address/some_photo.png",
name: "Hotel St.Pitersberg Name",
address: "sSt.Pitersberg, some street, 2",
amenities: [{
name: 'wi-fi'
}, {
name: 'bar'
}, {
name: 'fitness'
}, {
name: 'transfer'
},
{
name: 'bath'
}, {
name: 'breakfast'
}, {
name: 'spa'
}
],
price: 4000
},
}]
changeFilterValue: function(choosenAmenity) {
this.changeFiltersList(choosenAmenity);
let settedList = this.settedFilters;

this.filteredData = this.hotels.filter(function(hotel) { //массив hotels
let amenityArray = [];
hotel.amenities.forEach(function(amenity) {
amenityArray.push(amenity.name);
})
return settedList.filter(function(elem) {
console.log(settedList, amenityArray);
console.log(amenityArray.includes(elem));
return amenityArray.includes(elem);
});
})
console.log(this.filteredData);

最佳答案

settedList.filter(...) 返回一些数组,该数组始终为 truthy 。如果您想检查数组是否不为空,请尝试使用 return settedList.filter(...).length 来代替

关于javascript - 试图找出该功能不起作用的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58380093/

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