Object.create(null)与对象字面量创建对象的区别
2019-08-13 本文已影响0人
Odeng
Object.create(null)
Object.create(null)没有继承任何原型方法。创建对象里面空空如也.
Object.create({})
继承Object.prototype上的方法
对象字面量
继承Object原型上的方法
new Object
带上原型上方法
总结
createObject.jpg如图所示:Object.create(null)创建的对象没有原型上的方法。Object.create({}),对象字面量,new Object()都会带上Object原型上的方法
测试代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Create Object</title>
</head>
<body>
<script>
var obj1 = Object.create(null);
var obj2 = Object.create({});
var obj3 = {};
var obj4 = new Object();
console.log(obj1);
console.log(obj2);
console.log(obj3);
console.log(obj4);
</script>
</body>
</html>