在很多的時(shí)候,后臺給我們返回的字符串類型的數(shù)據(jù)顾瞪,我們直接用的時(shí)候可能會有出bug筒狠。
比如下面的代碼:
[WODUserDefaults setObject:result.attr[@"user"][@"nickName"] forKey:kWXNickName];
直接這樣寫剪芍,會讓app直接掛掉,原因是plist文件不能存'空'窟蓝,所以在存的時(shí)候要加判斷:result.attr[@"user"][@"nickName"] 是否為空。
修改代碼如下:
if (![[result.attr[@"user"][@"nickName"] class] isSubclassOfClass:[NSNull class]]) {
[WODUserDefaults setObject:result.attr[@"user"][@"nickName"] forKey:kWXNickName];
}
這里判斷需要用的這個(gè)value的類型是否是NSNull類型饱普,如果是則代表沒有值运挫。
因?yàn)槿绻荖SNull類型的時(shí)候是返回yes,所以我們這里取反套耕。