В частности, эта проблема возникла у меня, когда я сделал запрос в AFNeworking с JSONkit и получил (id) JSON с несколькими вложенными массивами и словарями.
Если я не хочу изменять данные, у меня нет проблем:
self.myNSArray = [JSON objectForKey:@"result"];
Но если я хочу изменить данные, я должен сохранить их в изменяемой переменной:
self.myNSMutableArray = [[JSON objectForKey:@"result"] mutableCopy];
Последний не преобразует вложенные массивы или словари в изменяемые данные; это работает только для первого уровня.
Единственный путь, который я нашел, - по этой ссылке рекурсивные изменяемые объекты ; но я не знаю, есть ли лучший способ решить эту проблему.
Заранее спасибо.