Javascript 返回仅包含与给定值匹配的元素的筛选数组
我需要一个方法,该方法遍历posts数组,并返回一个新数组,其中只包含与Javascript 返回仅包含与给定值匹配的元素的筛选数组,javascript,arrays,methods,filter,Javascript,Arrays,Methods,Filter,我需要一个方法,该方法遍历posts数组,并返回一个新数组,其中只包含与userId属性的某个值匹配的元素 例如: let postsArr = [ { "userId": 1, "id": 1 }, { "userId": 1, "id": 2 }, { "userId": 2, "id": 3 }, {
userId
属性的某个值匹配的元素
例如:
let postsArr = [
{
"userId": 1,
"id": 1
},
{
"userId": 1,
"id": 2
},
{
"userId": 2,
"id": 3
},
{
"userId": 2,
"id": 4
},
{
"userId": 3,
"id": 5
}
]
假设我只想返回具有userId:2
的项目
(有点像…)
这将(理想情况下)返回:
我肯定它会像.map()或.filter()一样,但我完全可以弄清楚如何做,或者在这种情况下最好的方法是什么
非常感谢您的帮助。老实说,您的帮助非常宝贵
let postsar=[
{
“用户ID”:1,
“id”:1
},
{
“用户ID”:1,
“id”:2
},
{
“用户ID”:2,
“id”:3
},
{
“用户ID”:2,
“id”:4
},
{
“用户ID”:3,
“id”:5
}
];
var farray=postsArr.filter((a)=>a.userId==2);
控制台日志(farray)代码>老实说,你的大部分时间都在那里
let postsar=[
{
“用户ID”:1,
“id”:1
},
{
“用户ID”:1,
“id”:2
},
{
“用户ID”:2,
“id”:3
},
{
“用户ID”:2,
“id”:4
},
{
“用户ID”:3,
“id”:5
}
];
var farray=postsArr.filter((a)=>a.userId==2);
控制台日志(farray)。我们过去经常这样做
var newarray = postsArr.filter(function(obj){
return obj.userId === 2
})
在ES5中。我们过去经常这样做
var newarray = postsArr.filter(function(obj){
return obj.userId === 2
})
你没有看过MDN文档中的过滤器吗?这是我不喜欢数组
函数的箭头
函数的原因之一。不过,还是要从记录post
开始。看看它能给你什么,然后试着得到你想要的want@Rajesh什么原因?可能重复的人不明白他们可以做=>{}
和调试他们的代码你没有查看MDN文档进行筛选吗?这是我不喜欢数组
函数的箭头
函数的原因之一。不过,还是要从记录post
开始。看看它能给你什么,然后试着得到你想要的want@Rajesh什么原因?可能是重复的人不明白他们可以做=>{}
和调试他们的代码我很接近。。。我只是不知道如何处理函数的内容。因此,如果元素与条件匹配,它只返回元素。明白了:)我很接近。。。我只是不知道如何处理函数的内容。因此,如果元素与条件匹配,它只返回元素。明白了:)
var newarray = postsArr.filter(function(obj){
return obj.userId === 2
})