js中var a=new Object()和var a={}有什么区别吗?

原文: http://zhidao.baidu.com/link?url=G057tERsdTZUDihwpY-ASA1ZnkUtwgmYQRF-aHOcyPy2u_O1MIA1oifEjTBpQqZ5rPSg8sNdydsb2L0feASYCa
 
 
应该是没有区别的,两者都是生成一个默认的Object对象。js和其它语言一样,一切对象的基类都是Object,所以,new Object()和简易的{}是同样的空对象,就是默认的对象。本来我以为{}应该是一个没有任何属性和方法的对象,但事实证明,var a = {},a.toString()等Object对象所具有的方法,a都具有。由此也可以判断,其实a = {}就是a = new Objcet()的简单实现。就像在java语言中,String str = ""和String str = new String()都是创建String的对象一样。

你可能感兴趣的:(js中var a=new Object()和var a={}有什么区别吗?)