1.判斷已經(jīng)定義的對(duì)象是否為空
在 js文件中需要對(duì)data
里一些的對(duì)象進(jìn)行判斷是否為空
比如這里我要在頁(yè)面加載時(shí)判斷data
中的record
是否為空:
Page({
data: {
record:{} //判斷record對(duì)象是否為空
},
})
在onload()
方法中使用Object.key().length>0
來(lái)判斷:
onLoad: function () {
let records = wx.getStorageSync('record'); //在內(nèi)存中讀取到記錄
this.setData({ //存儲(chǔ)讀取信息
record : records
})
if(Object.keys(this.data.record).length >0){ //判斷是否有記錄
console.log("record有記錄");
}else{
console.log("record沒(méi)有記錄");
}
},
原因分析:
Object.keys()方法:將給定對(duì)象的所有可枚舉屬性變成一個(gè)字符串?dāng)?shù)組
解釋:將需要判斷的對(duì)象轉(zhuǎn)換為一個(gè)字符串?dāng)?shù)組然后再去判斷它的長(zhǎng)度,這樣就知道其是否為空了。
2.判斷未定義的值是否存在
比如這里我要在頁(yè)面加載時(shí)判斷record
中的name
是否存在:
Page({
data: {
record:{}
},
})
在onload()
方法中使用typeof()
來(lái)判斷其是否存在:
onLoad: function () {
let records = wx.getStorageSync('record'); //在內(nèi)存中讀取到記錄
this.setData({ //存儲(chǔ)讀取信息
record : records
})
//判斷是否有記錄
if(Object.keys(this.data.record).length >0){
//判斷是否name為空
if(typeof(this.data.record.name) !== 'undefined'){
console.log(this.data.record.name);
}else{
console.log("name為空");
}
}else{
console.log("record沒(méi)有記錄");
}
},
原因分析:
typeof()方法:返回一個(gè)字符串,表示未經(jīng)計(jì)算的操作數(shù)的類型。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-502169.html
全部返回類型:解釋:通過(guò)
typeof()
來(lái)判斷返回的值是否為 underfined 即不存在,如果不是就可以證明這個(gè)值存在文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-502169.html
到了這里,關(guān)于微信小程序如何判斷對(duì)象是否為空、判斷值是否存在的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!