title: Passing 'this' scope to callback function
body: <p>I'm trying to pass 'this' to a callback function. I know a "suitable" way of doing this is setting this to a variable and using the variable... but that's not very elegant.</p>
  
  <pre><code>var that = this;
  chrome.storage.sync.set(this.defaultOptions, function () {
      that.loadOptions();
  });
  </code></pre>
  
  <p>I'm trying something else, but I can't figure out how to do it. Here's what I have tried:</p>
  
  <pre><code>chrome.storage.sync.set(this.defaultOptions, (function () {
      this.loadOptions();
  }).call(this));
  </code></pre>
  
  <p>But it's not working out. I'm getting this error:</p>
  
  <pre><code>Error in response to storage.set: Error: Invocation of form 
  get(object, undefined) doesn't match definition 
  get(optional string or array or object keys, function callback)
  </code></pre>
  
  <p>Other questions on SO I've tried looking into have similar needs but not quite the same. How can I achieve what I want in the best way?</p>