vue報錯:"TypeError: Cannot read property 'forEach' of undefined"

在vue項目中有一個表格操作需要「獲取收藏狀態」的方法,其中用到了forEach,

收藏狀態

本來還好好的,結果當收藏列表爲空時forEach報錯了:"TypeError: Cannot read property 'forEach' of undefined" 

具體代碼如下:

//獲取收藏狀態
getSc(items){
   // console.log('對比列', this.scExistingArr,items)
   let _flag = false;
    this.scExistingArr.forEach(e=>{
       if(e.iAutoID == items.iAutoID){
            _flag =  true;
       }
    });
     return _flag;
},

報錯原因:forEach是一種array...確定是一個數組才能使用

解決方法: 

1)改爲for in 遍歷的方式

2)在外出加一層判斷,當this.scExistingArr存在爲數組的時候再遍歷,如下

//獲取收藏狀態
getSc(items){
   // console.log('對比列', this.scExistingArr,items)
   let _flag = false;
   if(this.scExistingArr){
         this.scExistingArr.forEach(e=>{
            if(e.iAutoID == items.iAutoID){
                _flag =  true;
            }
         });
   };
   return _flag;
},