Http://www.w3school.com.cn/js/pro_js_object_types.asp
in ECMAScript, all objects are not created equally.
In general, there are three types of objects that you can create and use: local objects, built-in objects, and host objects. Local Objects
ECMA-262 defines the local object (native object) as "the object provided by the ECMAScript implementation that is independent of the host environment." In simple terms, the local object is the ECMA-262-defined class (reference type). They include: Object Function Array String Boolean number Date RegExp Error evalerror rangeerror referenceerror syntaxerror typeer Ror urierror related pages
JavaScript Advanced Tutorial: ECMAScript reference type
JavaScript Advanced Tutorial: ECMAScript Function Class
JavaScript Reference Manual: Array Object
JavaScript Reference Manual: Boolean Object
JavaScript Reference Manual: Date Object
JavaScript Reference Manual: Number Object
JavaScript Reference Manual: String Object
JavaScript Reference Manual: RegExp object built-in objects
ECMA-262 defines a built-in object (built-in object) as "all objects provided by the ECMAScript implementation that are independent of the host environment and appear when the ECMAScript program starts executing." This means that the developer does not have to explicitly instantiate the built-in object, it has been instantiated. ECMA-262 defines only two built-in objects, Global and Math (they are also local objects, and, by definition, each built-in object is a local object). related pages
JavaScript Reference Manual: Global Object
JavaScript Reference Manual: Math object Host Object
All Non-local objects are host objects (host object), that is, objects provided by the hosting environment implemented by ECMAScript.
All BOM and DOM objects are host objects. related pages
JavaScript Advanced Tutorial: JavaScript implementation
W3school Reference Manual: JavaScript reference Manual
W3school Tutorial: HTML DOM Tutorial