当我在 Javascript 中返回对象时未定义

Undefined when i am returning an Object in Javascript

我在 VueX 中做一个 getter,当我为另一个函数返回一个对象时,我有“未定义”。

  getId: (state) => (LotofID, id) => {
    LotofID.points.map(obj => {
      if (obj.id === id)
        return (obj);
   })

基本上我有这样的功能。当我用 console.log(obj) 显示 obj 时,我在此处有一个包含元素的对象。基本上它在工作。但是当我在做 return 并且我试图在另一个函数中获取 obj 时

var test = []
selectedRowKeys.map(obj => {
    test.push(this.$store.getters.getId(LotofID, obj))
  })
  console.log(test)

我的变量中有一个“未定义”。 任何人都知道问题出在哪里

您应该使用 find 方法而不是 map 和 return 在您的 getter:

中找到的项目
 getId: (state) => (LotofID, id) => {
    return LotofID.points.find(obj => obj.id === id)
}