如何在 JavaScript 中比较两个不同数组中的两个特定元素
我有两个状态,状态A和状态B第一个包含一个对象女巫,该对象是包含用户ID的源头,在状态B中,我有用户ID。 因此,我想知道如何将其与用户ID进行比较
这是我的尝试,但它没有起作用,因为它为我提供了所有用户,并且没有比较:
const PostuledBy = ({ offrr, dev }) => {
const [listdev , setListdev]=useState([]);
useEffect(()=>{
setListdev(dev
?.filter((el, index) => {
return offrr.postuledby.filter((ell) => ell._id === el._id);
}))
},[])
return ()
i have two states , state A and state B the first one contain an object witch is postuledby that contain the id of user and in state B i have the user id .
so i wanna know how to compare postuledby with user id
this is my try but it did not work cause it give me all the users and didn't compare :
const PostuledBy = ({ offrr, dev }) => {
const [listdev , setListdev]=useState([]);
useEffect(()=>{
setListdev(dev
?.filter((el, index) => {
return offrr.postuledby.filter((ell) => ell._id === el._id);
}))
},[])
return ()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试一下:
我并没有真正获得整个命名内容,但是上面的代码期望
barray
仅具有 IDS 。类似于:[1,32,4]
和Aarray具有整个对象。例如:[{name:“ blah”,id:1},{name:“ mlah”,id:32}]
>try this:
I didn't really got the whole postuledby naming thing but the code above expects the
BArray
to have only the ids. something like:[1,32,4]
and AArray to have the whole object. ex:[{name:"blah", id:1}, {name:"mlah", id:32}]
你有 2 个数组,一个是用于控制和其他包含对象的 id。
使用简单的过滤器,您可以找到 ids 数组中包含的对象:
这是codesandbox中的一个简单示例
you have 2 arrays, one is ids for control and other containing objects.
with a simple filter you can find the objects containing in ids array:
here is a simple example in codesandbox