簡體   English   中英

Index.js:46 未捕獲的類型錯誤:無法讀取未定義的屬性“生活方式”

[英]Index.js:46 Uncaught TypeError: Cannot Read Property 'lifestyle' Of Undefined

我是 jquery 的新手,我正在編寫一個 ajax 調用來從 API 檢索數據,

該功能用於現場和本地,

在我的本地,響應是

var response = res;

var test = response.hearts.assessments.lifestyle            

在我的直播中,回應是

var response = res;

var test = response.assessments.lifestyle 

它沒有[心臟]

我需要實現一個條件來處理這兩個條件

目前,我使用了 if-else 條件,但它在我的本地給出了未定義生活方式的錯誤。

這是我的代碼

var response = res;
            if(typeof(response.assessments.lifestyle) != "undefined" || response.assessments.lifestyle !== null) {
                var lifestyle = response.assessments.lifestyle;               
            }
            else{
                var lifestyle = response.hearts.assessments.lifestyle;
            }
            

但是這段代碼不起作用,有人可以幫忙嗎謝謝..

按規定嘗試

let response  =  response.assessments || response.hearts.assessments || [];
response = response.lifestyle ||"";

如果“response.assessments”未定義,它將檢查“response.hearts.assessments”,如果兩者都未定義或為空或未定義,它將返回空數組第二行以檢查生活方式屬性,如果未定義則為空字符串

您應該使用此方法檢查 response.assessments 中是否存在關鍵的“hearts”

   var response = res;
   if("hearts" in response) {
     var lifestyle = response.hearts.assessments.lifestyle;               
   } else {
     var lifestyle = response.assessments.lifestyle;
   }
        

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM