title: Observable.subscribe body not updating variable
body: <p>I have an instance of Organisation which initialises with an id:null. In the following code, I detect this condition to determine whether to call create or update on a service:</p>
  
  <pre><code>private saveOrganisation() {
    console.log('1 ' + JSON.stringify(this.organisation));
  
    if (this.organisation.id === null) {
      // we are creating a new one
      this.organisationService.create(this.organisation).subscribe(res =&gt; {
        console.log('2 ' + res);
        console.log('3 ' + JSON.stringify(this.organisation));
        return this.organisation = res;
      });
     } else {
       this.organisationService.update(this.organisation).subscribe(res =&gt; {return this.organisation = res;});
     }
       console.log('4 ' + JSON.stringify(this.organisation));
  }
  </code></pre>
  
  <p>I have this instance as a member variable referenced by "this.organisation" in the body of the subscription, i set "this.organisation" with the response.</p>
  
  <ol>
  <li>The first console log shows this.organisation id : null (as expected) </li>
  <li>The second console log shows res id : 1 (as expected) </li>
  <li>The third console log shows this.organisation id : 1 (as expected) </li>
  <li>The fourth console log shows this.organisation id : null (not expected)</li>
  </ol>
  
  <p>The fourth console.log fires before 2 and 3, while I know that subscribe is asynchronous, i am finding that although I see 2 and 3 in the logs, the id is still never updated, subsequent calls to saveOrganisation() show the null value that I get in 4 (in 1 and 2). I am wondering if this.organisation <strong>ever</strong> updates.</p>
  
  <p>Can anyone tell me what's going on?</p>