code: function( obj ) {
    // Not plain objects:
    // - Any object or value whose internal [[Class]] property is not "[object Object]"
    // - DOM nodes
    // - window
    if (typeof obj !== "object" || obj.nodeType || (obj !== null && obj === obj.window)) {
      return false;
    }
  
    if (obj.constructor && !Object.prototype.hasOwnProperty.call(obj.constructor.prototype, "isPrototypeOf")) {
      return false;
    }
  
    // If the function hasn't returned already, we're confident that
    // |obj| is a plain object, created by {} or constructed with new Object
    return true;
  }
docs: Taken from jQuery 2.1.3
  
  @param obj
  @returns {boolean}