为什么newperson4被创建,并且没有出错?下面的代码-
function person() {
}
var p = new person();
var q = null;
var r = "some string";
var newperson1 = Object.create(p); //Runs fine.
var newperson2 = Object.create(q); //Runs fine.
var newperson3 = Object.create(r); //Errors - Object.prototype requires to be an Object or Null only. Fine!
var newperson4 = Object.create(person); //Based on above error, person is a function, not an object. How is it working?
最佳答案
每个函数都是 JavaScript 中的对象(就像数组是对象一样),而不是原始值。它可以有属性,并且您可以继承它。
关于Javascript - Object.create 为什么将函数作为参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35381971/