3 回答

TA貢獻1772條經驗 獲得超5個贊
不確定要如何過濾它也會共享所需的輸出以獲得更好的清晰度。
var data=[{owner: "76561198111463361",sold: true,inventory: [{ name: "AK-47 | Redline", }, { name: "StatTrak? AWP | Asiimov",}],name: "m",password: "e",},{owner: "76561198111463361",sold: true,inventory: [{ name: "AK-47 | Redline", }, { name: "StatTrak? AWP | Asiimov",}],name: "m",password: "e"}];
var string = 'Redline';
result = data.filter(val=>val.inventory.some(k=>k.name.toUpperCase().includes(string.toUpperCase())));
console.log(result);
如果這解決了您的問題,請告訴我。

TA貢獻1942條經驗 獲得超3個贊
您可以映射和過濾數據。
const findInventory = (data, fn) => {
return data.reduce((array, item) => {
let inventory = item.inventory;
if (fn !== undefined) {
inventory = inventory.map(fn);
}
array = array.concat(inventory);
return array;
}, []);
};
const data = [{"owner":"76561198111463361","sold":true,"inventory":[{"name":"AK-47 | Redline","price":1369},{"name":"StatTrak? AWP | Asiimov","price":8050}],"name":"m","password":"e"},{"owner":"76561198111463361","sold":true,"inventory":[{"name":"AK-47 | Redline","price":1369},{"name":"StatTrak? AWP | Asiimov","price":8050}],"name":"m","password":"e"}];
// Get objects
console.log(findInventory(data));
// get names
console.log(findInventory(data, (i) => i.name));
第二個例子:
const findInventory = (data, mapper, filter) => {
return data.reduce((array, item) => {
let inventory = item.inventory;
if (mapper !== undefined && filter !== undefined) {
inventory = inventory.map(mapper).filter(filter);
}
array = array.concat(inventory);
return array;
}, []);
};
const data = [{"owner":"76561198111463361","sold":true,"inventory":[{"name":"AK-47 | Redline","price":1369},{"name":"StatTrak? AWP | Asiimov","price":8050}],"name":"m","password":"e"},{"owner":"76561198111463361","sold":true,"inventory":[{"name":"AK-47 | Redline","price":1369},{"name":"StatTrak? AWP | Asiimov","price":8050}],"name":"m","password":"e"}];
// Get objects
console.log(findInventory(data));
// get names by filter
console.log(findInventory(data, (i) => i.name, (name) => name.indexOf("AK-") !== -1));

TA貢獻1829條經驗 獲得超13個贊
你可以用它來過濾掉所有者信息,如果你想要更具體的東西,請評論下來x.filter(item => item.inventory.find(data => data.name.indexOf(searchKeyword) !== -1))
添加回答
舉報