var foo = {
  a: function () {
    console.log(this);
  }
};

foo.a(); // Logs the foo obj
foo['a'](); // Same, logs the foo obj

var bar = foo.a;
bar(); // Logs the global obj

var Baz = function () {
  // Implicit 'this' created
  console.log(this);
  this.a = true;
  this.b = 'whatever';
  // Implicit 'this' returned
};

// Using `new` puts it into constructor mode
var qux = new Baz(); // Logs the implict new instance