• 解析数据时,快速查看当前需要创建的数据模型的所有属性,不用每个都写,直接打印粘贴


    创建一个NSDictionary类别:

    #import <Foundation/Foundation.h>
    
    /**
     根据网络请求返回的字典数据,写对应的模型。当属性多时,用手写很费功夫,可用这个类快速打印出所有的模型属性,直接粘贴即可
     */
    @interface NSDictionary (PropertyCode)
    
    //生成需要的属性代码
    - (void)getPropertyCode;
    
    @end
    #import "NSDictionary+PropertyCode.h"
    
    @implementation NSDictionary (PropertyCode)
    
    //生成需要的属性代码
    - (void)getPropertyCode{
        NSMutableString *codes = [NSMutableString string];
        
        //遍历字典在所有的key一一对应
        [self enumerateKeysAndObjectsUsingBlock:^(id  _Nonnull key, id  _Nonnull obj, BOOL * _Nonnull stop) {
            //key:属性名
            NSString *code;
            if ([obj isKindOfClass:[NSString class]]) {
                code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSString *%@",key];
            }
            else if ([obj isKindOfClass:NSClassFromString(@"__NSCFBoolean")]){
                code = [NSString stringWithFormat:@"@property (nonatomic ,assign) BOOL %@;",key];
            }
            else if ([obj isKindOfClass:[NSArray class]]) {
                code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSArray *%@",key];
            }
            else if ([obj isKindOfClass:[NSDictionary class]]) {
                code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSDictionary *%@",key];
            }
            else if ([obj isKindOfClass:[NSNumber class]]) {
                code = [NSString stringWithFormat:@"@property (nonatomic ,assign) NSInteger *%@",key];
            }
            
            [codes appendFormat:@"
    %@
    ",code];
        }];
        
        NSLog(@"数据模型属性------
    %@",codes);
    }
    
    @end
  • 相关阅读:
    jquery点击事件后增加克隆的标签,并改变克隆的属性加入
    jQuery 文本插入和标签移动方法
    用jquery来实现正反选选择框checkbox的小示例
    js 常用事件句柄总结
    jQuery 菜单小练习(实现点击和移动鼠标效果)
    jQuery 选择器
    js 中移动元素的方法
    《JavaScript总结》深拷贝和浅拷贝
    《JavaScript总结》js的运行机制
    git 撤回放到暂存区的文件
  • 原文地址:https://www.cnblogs.com/Crazy-ZY/p/5642677.html
Copyright © 2020-2023  润新知