以下是三种创建空对象的方法:
他们对Javascript来说是一样的,新创建的三个对象会继承object所有的属性和方法,所以emptyObj1.toString等于Object.prototype.toString。但是要注意,{}.toString是会报错的!
类似的还有空数组问题:
以上两行没有差别
以上两行也没有差别
以上两行是不同的
以上代码可以看出用Object.create创建的数组返回的是Object, 如果把arr3[0] = 'first element'换成arr3.push('first element'),那输出的结果就和上面两个一样了。
参考链接:
http://stackoverflow.com/questions/251402/create-an-empty-object-in-javascript-with-or-new-object
http://stackoverflow.com/questions/931872/what-s-the-difference-between-array-and-while-declaring-a-javascript-ar