title: AsyncStorage mergeItem - Unrecognised selector
body: <p>Hi I'm trying to do a simple get and update using AsyncStorage in react native.</p>
  
  <p>I get the data in componentDidMount() using the following code:</p>
  
  <pre><code>   AsyncStorage.getItem('mytrips', (err, result) =&gt; {
        if(result !== null){
          var data = JSON.parse(result);
  
          console.log(result);
          this.setState({
            email: data.email,
            firstname: data.firstname,
            lastname: data.lastname,
            phone: data.phone,
            mobile: data.mobile,
            phonecode: data.phonecode,
            DOB: moment(data.DOB).format('DD MMM YYYY'),
          });
        }
      });
  </code></pre>
  
  <p>Following some user input I want to update what's in storage using mergeItem.</p>
  
  <pre><code>AsyncStorage.mergeItem('mytrips', JSON.stringify(data));
  </code></pre>
  
  <p>data is an object of all the changed values.</p>
  
  <p>I get the following error when mergeItem is called.</p>
  
  <pre><code>ExceptionsManager.js:71 Exception '-[__NSArrayI objectForKeyedSubscript:]: unrecognized selector sent to instance 0x600000886400' was thrown while invoking multiMerge on target AsyncLocalStorage with params (
          (
                  (
              mytrips,
              "[\"Carl\",\"Carl\",\"11111111\",\"111111111\",\"\",\"1900-01-01\",\"carl@test.com\"]"
          )
      ),
      3657
  )
  </code></pre>
  
  <p>Any idea what could be causing the selector to be unrecognised? I'm not calling removeItem anywhere in my code.</p>