ios中son解析中出现<null>的问题

一:关于数组字典中的null
比如:

NSArray * array =     @[@{@"testKey1":@"testValue1"},@{@"testKey2":[NSNull null]}];

[[NSUserDefaults standardUserDefaults] setObject:array forKey:@"testKey"];
       ```
因为数组中字典有null,那么你沙盒本地化时候就会直接cr acrach


二:关于请求到的json数据
由于服务器返回的数据有些字段为空,那么json形式返回的数据就是

"value":null

而我们一般解析json数据都用第三方,那么通过第三方得到的数据

value=<null>

这个数据类型不是nil也不是string,那么把这个数据解析成对象后,直接调用对象方法比如(length count)就会直接crash


那么解决方法

查看网上很多人都用

if([obj isKindofClass:[NSNull class]])

但是我还是觉得太麻烦,比如这种字段太多,那简直会折磨死人

于是乎,最后找到一个博客上说一歪果仁写了一个类别,真牛逼啊,大概意思就是:在运行时操作,把null转化为nil,至少nil是安全的,可以给nil对象发送任何小心不奔溃


地址:https://github.com/nicklockwood/NullSafe
只需把这个类别加入工程就可以,特别简单






最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 8,755评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 14,766评论 0 15
  • 在iOS开发过程中经常需要与服务器进行数据通讯,Json就是一种常用的高效简洁的数据格式。问题现象但是几个项目下来...
    seventhboy阅读 3,717评论 0 1
  • 在iOS开发过程中经常需要与服务器进行数据通讯,Json就是一种常用的高效简洁的数据格式。 问题现象 但是几个项目...
    红酒佳坊阅读 5,196评论 1 3

友情链接更多精彩内容