簡體   English   中英

檢查js / jQuery是否確實存在對象(不是元素)

[英]Check if an object (not an element) really exists with js/jQuery

我得到了以下代碼字符串,數據是在ajax環境中的成功回調內返回的值:

$('#cpt_rspp_value').text(data.Payload.Clerks.rspp.full_name)
$('#cpt_ddl_value').text(data.Payload.Clerks.ddl.full_name)
$('#cpt_rls_value').text(data.Payload.Clerks.rls.full_name)
$('#cpt_mc_value').text(data.Payload.Cler.mc.full_name)
$('#cpt_se_value').text(data.Payload.Clerks.se.full_name)

如果rspp確實存在於數據庫中,則將出現對象數據data.Payload.Clerks.rspp.full_name將存在,因此我可以將其放在正確的位置(即: #cpt_rspp_value )。 但是,可惜的是,如果該對象不存在,則js解釋器將停止,因此,即使下一個對象data.Payload.Clerks.ddl.full_namedata.Payload.Clerks.rls.full_name等等,也將是目前,該行將永遠不會被處理。

我應該“如果”有任何行,但是如何? if(data.Payload.Clerks.rspp.full_name)if(data.Payload.Clerks.rspp.full_name != null)無法解決問題。 我能做什么?

您可以使用typeof javascript運算符檢查是否定義了對象,

if(typeof data.Payload.Clerks.rspp.full_name != 'undefined')

要么

if(typeof data.Payload.Clerks.rspp != 'undefined')

用於檢查是否嚴格來說是一個object

if(typeof myobject === 'object')

根據您的情況,檢查string類型

if( typeof data.Payload.Clerks.rspp.full_name === 'string')

個人觀點-您可以只使用if(rspp.full_name)因為這在較大的方案中是很簡單的檢查。 (從問題中看起來):)

暫無
暫無

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

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