How do I get the index of object in array using angular?

sta*_*tan 16 javascript arrays indexof typescript angular

I need to have the index of an object in array so I can delete this part of the array. I tried using this:

var index = this.urenRegistratie.indexOf(newDatum);
Run Code Online (Sandbox Code Playgroud)

But it keeps returning -1 and I don't know why this is happening.

this is the part of the code I have. it gets data out of a form in html and places that into my array, now I already have an if statement ready ( exisitingDatum ) , my code needs to be in there. Can someone please help me out a bit?

 store(newValue:number, newDatum, newAanwezig, newComment){
    const existingDatum = this.urenRegistratie.find(billable => {
      return billable.datum === newDatum;
      return
    });

    if (!existingDatum) {
        let billable = new BillableHours();
        billable.datum = newDatum;
        billable.hours = +newValue;
        billable.aanwezig = newAanwezig;
        billable.comment = newComment;

        if(billable.aanwezig == "Aanwezig" && billable.hours !== 0 && billable.datum !== null) {
          this.urenRegistratie.push(billable);
        }
    }

    if(existingDatum) {

    }

  }
Run Code Online (Sandbox Code Playgroud)

Ste*_*pUp 30

正如 mdn 所说:

findIndex() 方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1,表示没有元素通过测试。

如果您有这样的对象数组,请尝试使用findIndex

const a = [
    { firstName: "Adam", LastName: "Howard" },
    { firstName: "Ben", LastName: "Skeet" },
    { firstName: "Joseph", LastName: "Skeet" }
];

let index = a.findIndex(x => x.LastName === "Skeet");
console.log(index);
Run Code Online (Sandbox Code Playgroud)