
在做微信公眾號(hào)開發(fā)時(shí),因?yàn)楂@得的微信傳遞過來的數(shù)據(jù)是json格式,特別是在做個(gè)性化菜單時(shí)相當(dāng)麻煩,必須要驗(yàn)證某個(gè)標(biāo)簽是否存在,如果在存就繼續(xù)操作,下面就是用到的示例代碼。
以下是操作示例:
'性別
if jsonObject.conditionalmenu.Get(i).matchrule.hasOwnProperty("sex") then onenav_zi_sex = jsonObject.conditionalmenu.Get(i).matchrule.sex
'網(wǎng)址
if jsonObject.conditionalmenu.Get(i).button.Get(n).sub_button.Get(y).hasOwnProperty("url") then treenav_url = jsonObject.conditionalmenu.Get(i).button.Get(n).sub_button.Get(y).url
Object對(duì)象hasOwnProperty方法的作用,如何判斷一個(gè)JSON對(duì)象中是否有某個(gè)鍵key
Object 對(duì)象自身用處不大,不過在了解其他類之前,還是應(yīng)該了解它。因?yàn)?ECMAScript 中的 Object 對(duì)象與 Java 中的 java.lang.Object 相似,ECMAScript 中的所有對(duì)象都由這個(gè)對(duì)象繼承而來,Object 對(duì)象中的所有屬性和方法都會(huì)出現(xiàn)在其他對(duì)象中,所以理解了 Object 對(duì)象,就可以更好地理解其他對(duì)象。
Object 對(duì)象具有下列屬性:
constructor
對(duì)創(chuàng)建對(duì)象的函數(shù)的引用(指針)。對(duì)于 Object 對(duì)象,該指針指向原始的 Object() 函數(shù)。
Prototype
對(duì)該對(duì)象的對(duì)象原型的引用。對(duì)于所有的對(duì)象,它默認(rèn)返回 Object 對(duì)象的一個(gè)實(shí)例。
hasOwnProperty(property)
判斷對(duì)象是否有某個(gè)特定的屬性。必須用字符串指定該屬性。(例如,o.hasOwnProperty("name"))
IsPrototypeOf(object)
判斷該對(duì)象是否為另一個(gè)對(duì)象的原型。
PropertyIsEnumerable
判斷給定的屬性是否可以用 for...in 語(yǔ)句進(jìn)行枚舉。
ToString()
返回對(duì)象的原始字符串表示。對(duì)于 Object 對(duì)象,ECMA-262 沒有定義這個(gè)值,所以不同的 ECMAScript 實(shí)現(xiàn)具有不同的值。
ValueOf()
返回最適合該對(duì)象的原始值。對(duì)于許多對(duì)象,該方法返回的值都與 ToString() 的返回值相同。
注釋:上面列出的每種屬性和方法都會(huì)被其他對(duì)象覆蓋。
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。