javascript - 如何过滤数组并获取整个数据条目?

我有,

[
  {
    _id: 60673d40ba14f617081bdf4d,
    ImageName: 'Flowers',
    ImagePath: './public/assets/img/1.jpg',
    Description: 'A cool Image',
    __v: 0
  },
  {
    _id: 60673e099d76ef16a8ec4588,
    ImageName: 'Water Bubble Colors',
    ImagePath: './public/assets/img/2.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: 60673e39f10c4a12a0f4ea31,
    ImageName: 'Egg Silhouette Wallpaper',
    ImagePath: './public/assets/img/3.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: 60673e4a15d9bb18a01312df,
    ImageName: 'Pencil BW ',
    ImagePath: './public/assets/img/4.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: 60673e6c6de9bb1bf8c65d25,
    ImageName: 'Water',
    ImagePath: './public/assets/img/5.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: 60673e8a8af58b1fb8b11596,
    ImageName: 'Dining Plate',
    ImagePath: './public/assets/img/6.jpg',
    Description: 'Wallpapers',
    __v: 0
  }
]

var id = req.params.id 基本上是 60673e8a8af58b1fb8b11596。 现在如何使用我拥有的 id 变量过滤数组并获得具有 id 的整个对象?我想要带有 _id、ImageName、ImagePath、__v 和 Description 的整个对象。

我搜索了很多,找到了 array.filter 方法,但是它太复杂了,没有帮助我,我更加困惑了。

最佳答案

您可以尝试使用 Array.prototype.filter()检查 ID:

var data = [
  {
    _id: '60673d40ba14f617081bdf4d',
    ImageName: 'Flowers',
    ImagePath: './public/assets/img/1.jpg',
    Description: 'A cool Image',
    __v: 0
  },
  {
    _id: '60673e099d76ef16a8ec4588',
    ImageName: 'Water Bubble Colors',
    ImagePath: './public/assets/img/2.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: '60673e39f10c4a12a0f4ea31',
    ImageName: 'Egg Silhouette Wallpaper',
    ImagePath: './public/assets/img/3.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: '60673e4a15d9bb18a01312df',
    ImageName: 'Pencil BW ',
    ImagePath: './public/assets/img/4.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: '60673e6c6de9bb1bf8c65d25',
    ImageName: 'Water',
    ImagePath: './public/assets/img/5.jpg',
    Description: 'Wallpapers',
    __v: 0
  },
  {
    _id: '60673e8a8af58b1fb8b11596',
    ImageName: 'Dining Plate',
    ImagePath: './public/assets/img/6.jpg',
    Description: 'Wallpapers',
    __v: 0
  }
]
var id = '60673e8a8af58b1fb8b11596'; //req.params.id

var res = data.filter(d => d._id == id);
console.log(res);

https://stackoverflow.com/questions/66929103/

相关文章:

javascript - 数组 .includes() 给出意外行为

flutter - 如何在 Flutter 中将标签空间禁用到 bottomNavigationBa

r - 如何使用 IF 函数更新数据框中的列?

c# - 手动创建 JSON

java - 如何总结对象流的数字属性?

arrays - 无法打印字符串常量数组字符串的内容?

flutter - 运算符 '*' 不能无条件调用,因为接收者可以是 'null' 。尝试向目标 (

java - 将 java.util.function.Function 定义为 static fi

python - Django 在速记渲染方法中添加自定义 header

docker - 未知速记标志 : 'a' in -a in docker