iT邦幫忙

0

刪除陣列中的物件(javascript)

各位大哥大姊好 小弟今天鬼打牆...

this.tableData.forEach(e => {
    if(e.id==77){
          console.log(e)
    this.tableData.splice(e,1)
   
  }

不知道為什麼 刪除的都是第一筆資料

這個陣列中 每筆資料有id name 等等 id從72~78
我想刪除其中一筆物件 id等於77
不知道為什麼都刪除到第一筆
我沒寫錯啊XD...


我會了 我想砍文章了XD

請告訴我我寫錯了
dragonH iT邦超人 5 級 ‧ 2020-03-14 13:08:42 檢舉
this.tableData.forEach((e, index) => {
if(e.id==77){
console.log(e)
this.tableData.splice(index, 1)
}
}
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
一級屠豬士
iT邦大師 1 級 ‧ 2020-03-14 13:36:24
最佳解答

這類的錯誤,是很容易犯的.所以一些編輯器會提供輔助.
這個叫做 Brace matching
https://en.wikipedia.org/wiki/Brace_matching

你可以去找一個合適的編輯器,打開相關的匹配功能,像是 {} 對應,以及()的對應.
還有像是 "", '' 等等的對應.會減少以後出錯的機率.

dragonH iT邦超人 5 級 ‧ 2020-03-14 14:12:09 檢舉

這類的錯誤,是很容易犯的.所以一些編輯器會提供輔助

這有可能不適用 js XD

因為有可能編輯器不知道他的 tableData 是個 array

這時候就要偷推 typesctipt

笑死XD

我要發表回答

立即登入回答