[英]Best practice for handling missing properties in a JavaScript object?
我有一個進行其余Web服務調用的客戶端,從該服務調用返回的數據是JSON對象。 它具有以下字段名稱,例如名稱和年齡。 我遇到一種情況,其中返回的數據中的字段為空。 收到此{}
而不是{"name":"john doe","age":"23"}
。 在JavaScript中處理異常的最佳方法是什么?
這取決於您期望的數據。
經典的方式是
if (typeof object.property === "undefined") {
...
}
這也意味着undefined
不是可接受的值(並且不應該)。 但是,如果這對您不利,那么總會有
if (!object.hasOwnProperty("property")) {
...
}
如果期望使用非空字符串(或非零數字),則可以快捷方式執行以下操作:
if (!object.property) {
...
}
但是,如果您需要接受空字符串或零,這也很常見:
if (object.property == null) {
...
}
這將拒絕undefined
(應該是您的情況) 和 null
(可能是另一個不可接受的值)之類的值。
但是,最后,我建議您返回null
而不是一個空對象,並這樣做:
if (object != null) {
// do your stuff with name and age
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.