Javascript 如何从数组中筛选出多个特定键和值
我有这个对象数组。我只想过滤掉其中的几个,特别是那些包含数字的Javascript 如何从数组中筛选出多个特定键和值,javascript,arrays,Javascript,Arrays,我有这个对象数组。我只想过滤掉其中的几个,特别是那些包含数字的 const arr = [ { Title: "Joker", Year: "2019", Rated: "R", Released: "04 Oct 2019", Runtime: "122 min", Genre: "Crime, Drama, Thriller", Director: "Todd Phillips", Wri
const arr = [
{
Title: "Joker",
Year: "2019",
Rated: "R",
Released: "04 Oct 2019",
Runtime: "122 min",
Genre: "Crime, Drama, Thriller",
Director: "Todd Phillips",
Writer:
"Todd Phillips, Scott Silver, Bob Kane (based on characters created by), Bill Finger (based on characters created by), Jerry Robinson (based on characters created by)",
Actors: "Joaquin Phoenix, Robert De Niro, Zazie Beetz, Frances Conroy",
Plot:
"In Gotham City, mentally troubled comedian Arthur Fleck is disregarded and mistreated by society. He then embarks on a downward spiral of revolution and bloody crime. This path brings him face-to-face with his alter-ego: the Joker.",
Language: "English",
Country: "USA, Canada",
Awards: "Won 2 Oscars. Another 57 wins & 163 nominations.",
Poster:
"https://m.media-amazon.com/images/M/MV5BNGVjNWI4ZGUtNzE0MS00YTJmLWE0ZDctN2ZiYTk2YmI3NTYyXkEyXkFqcGdeQXVyMTkxNjUyNQ@@._V1_SX300.jpg",
Ratings: [
{ Source: "Internet Movie Database", Value: "8.6/10" },
{ Source: "Rotten Tomatoes", Value: "69%" },
{ Source: "Metacritic", Value: "59/100" }
],
Metascore: "59",
imdbRating: "8.6",
imdbVotes: "665,555",
imdbID: "tt7286456",
Type: "movie",
DVD: "17 Dec 2019",
BoxOffice: "N/A",
Production: "Warner Bros. Pictures",
Website: "N/A",
Response: "True"
}
];
最初Api响应是在object中,所以我以某种方式将该对象转换为数组。现在我想过滤掉要比较的数字。以下是我尝试过的:
const makeArr = obj => {
let arr = [];
for (let [key, value] of Object.entries(obj)) {
arr.push({
[key]: value
});
}
return arr.filter(item => {
if (Object.values(item).includes(isNaN(parseInt(Object.values(item))))) {
return item;
}
});
};
为什么将API响应对象转换为数组?您可以使用
const obj={
标题:“小丑”,
年份:“2019年”,
额定值:“R”,
发布日期:“2019年10月4日”,
运行时间:“122分钟”,
类型:“犯罪、戏剧、惊悚片”,
导演:“托德·菲利普斯”,
作者:
“Todd Phillips、Scott Silver、Bob Kane(基于由创建的角色)、Bill Finger(基于由创建的角色)、Jerry Robinson(基于由创建的角色)”,
演员:“Joaquin Phoenix、Robert De Niro、Zazie Beetz、Frances Conroy”,
绘图:
“在高谭市,有精神问题的喜剧演员亚瑟·弗莱克受到社会的漠视和虐待。然后,他开始了革命和血腥犯罪的恶性循环。这条道路让他与另一个自我——小丑面对面。”,
语言:“英语”,
国家:“美国、加拿大”,
奖项:“获得2项奥斯卡奖。另有57项获奖,163项提名。”,
海报:
"https://m.media-amazon.com/images/M/MV5BNGVjNWI4ZGUtNzE0MS00YTJmLWE0ZDctN2ZiYTk2YmI3NTYyXkEyXkFqcGdeQXVyMTkxNjUyNQ@@._V1_SX300.jpg“,
评级:[
{来源:“互联网电影数据库”,价值:“8.6/10”},
{来源:“烂番茄”,价值:“69%”,
{来源:“元临界”,值:“59/100”}
],
元分数:“59”,
imdbRating:“8.6”,
imdbvows:“665555”,
imdbID:“tt7286456”,
类型:“电影”,
DVD:“2019年12月17日”,
票房:“不适用”,
制作:“华纳兄弟电影公司”,
网站:“不适用”,
回答:“正确”
}
用于(输入obj){
如果(!isNaN(对象[键]){
console.log(key,obj[key]);
}
}
parseInt在原语上正常工作,因此迭代对象值并检查!isNaN(parseInt(值))