Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do "Object()" and "new Object()" differ in JavaScript?

In JavaScript, what's the difference between

var x = Object();

and

var x = new Object();

?

like image 501
shoosh Avatar asked Jun 20 '10 19:06

shoosh


1 Answers

This is pulled directly from the ECMAScript specification:

15.2.1 The Object Constructor Called as a Function

When Object is called as a function rather than as a constructor, it performs a type conversion.

15.2.1.1 Object ( [ value ] )

When the Object function is called with no arguments or with one argument value, the following steps are taken:

  1. If value is null, undefined or not supplied, create and return a new Object object exactly as if the standard built-in Object constructor had been called with the same arguments (15.2.2.1).

    In Short: new Object([ value ])

  2. Return ToObject(value).

Notes:

[ ] Is A common way to mark a parameter as optional.

ToObject Is a very simple operation that is defined in section 9.9.

like image 68
ChaosPandion Avatar answered Oct 12 '22 15:10

ChaosPandion