如何解决如何修复这个“forEach of undefined”错误?
当我尝试运行此代码时得到 TypeError: Cannot read property 'forEach' of undefined
:
for (let Sıra_Numarası = 0; Sıra_Numarası < Anlamlar_Liste.length; Sıra_Numarası++) {
Anlamlar_Liste[Sıra_Numarası].ozelliklerListe.forEach(Özellik => {
Tepki_Mesajı.addField(`${Sıra_Numarası + 1}. ${Özellik.tam_adi}`,Anlamlar_Liste[Sıra_Numarası].anlam,true)
console.log(Özellik.tam_adi)
console.log(Anlamlar_Liste[Sıra_Numarası].ozelliklerListe)
})
}
Tepki_Mesajı.addField ()
方法用于向 discord Embed 消息添加新字段,我认为失败就在这里,因为 console.log ()
工作成功并且我在 JSON API 中获取数据。
API 中 Anlamlar_Liste
的值是:
[
{
"anlam_id": "4798","madde_id": "9592","anlam_sira": "1","fiil": "0","tipkes": "0","anlam": "Çocuğu olan kadın,ana,valide,kocakarı,mader,nene,aba","gos": "0","ozelliklerListe": [
{
"ozellik_id": "19","tur": "3","tam_adi": "isim","kisa_adi": "a.","ekno": "30"
}
]
},{
"anlam_id": "4799","anlam_sira": "2","anlam": "Yavrusu olan dişi hayvan","gos": "0"
}
]
解决方法
数组中的某些对象没有 ozelliklerListe
属性。所以在尝试使用它之前先检查一下。
Anlamlar_Liste.forEach(anlamlar => {
if (anlamlar.ozelliklerListe) {
anlamlar.ozelliklerListe.forEach(Özellik => {
Tepki_Mesajı.addField(`${Sıra_Numarası + 1}. ${Özellik.tam_adi}`,Anlamlar_Liste[Sıra_Numarası].anlam,true)
console.log(Özellik.tam_adi)
console.log(Anlamlar_Liste[Sıra_Numarası].ozelliklerListe)
})
}
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。