Object.create({})之间的差异{}

时间:2018-06-11 19:22:22

标签: javascript

很抱歉,这个问题可能有重复,但{}让搜索变得困难,或者没有人问过这个问题。有什么区别:

var a = {};

var b = Object.create({});

使用Google Dev Tool看起来非常相似(即使使用dir(a)dir(b)

1 个答案:

答案 0 :(得分:1)

对象文字{}创建一个以Object.prototype为原型的对象。

Object.create(x)函数调用创建一个以x为原型的对象。

因此Object.create({})将创建一个对象,该对象具有一个空对象作为其原型,而该对象又以Object.prototype为原型。这通常是无用的,通常应该避免这种情况。