首页 > 代码库 > iOS常见问题之NSString直接赋值带来的困惑

iOS常见问题之NSString直接赋值带来的困惑

1.问题描述

在项目中遇到一个奇怪的问题,在类中定义了一个属性title,其类型是NSString, 并设置为 @property (nonatomic,retain) NSString *title;


定义了一个方法,修改该属性,代码如下:

-(void)getSettingInfoFrmoWebView:(UIWebView*)webView
{
    NSString *value = http://www.mamicode.com/[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('column_title')[0].value"];>
当使用 title = value 直接赋值,title的内容乱了(此时title的retainCount的值是1);

当使用 [self setTitle:value] 赋值,title的内容是正确的(此时title的retainCount的值是2)。


2.我的疑问

两种赋值方式的差别是什么?
为什么直接赋值的时候title的内容会变乱?



iOS常见问题之NSString直接赋值带来的困惑