Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么对原型的这两个引用返回不同的值_Javascript_Prototype - Fatal编程技术网

Javascript 为什么对原型的这两个引用返回不同的值

Javascript 为什么对原型的这两个引用返回不同的值,javascript,prototype,Javascript,Prototype,哈?对象。getPrototypeOf(fn)将返回函数(){},因为这是所有函数的原型 而.prototype属性表示在使用fn构造(使用new调用)时新对象的方法和属性 var fn=function(){}; console.log(fn.prototype);//fn{} console.log(Object.getPrototypeOf(fn));//函数(){} /*这就像*/ console.log(fn.constructor.prototype)//由于构造函数是一个函数。。。

哈?

对象。getPrototypeOf(fn)
将返回
函数(){}
,因为这是所有函数的原型

.prototype
属性表示在使用
fn
构造(使用
new
调用)时新对象的方法和属性

var fn=function(){};
console.log(fn.prototype);//fn{}
console.log(Object.getPrototypeOf(fn));//函数(){}
/*这就像*/
console.log(fn.constructor.prototype)//由于构造函数是一个函数。。。
var child=new fn()
console.log(Object.getPrototypeOf(child));//fn{}

看看这个答案:-不是一个完全相同的问题,但它确实回答了这个问题。函数的原型属性只是一个蓝图。它是将作为原型分配给对象的对象,通过
new fn()
创建,但它不是函数的实际原型。
var fn = function(){};

console.log(fn.prototype == Object.getPrototypeOf(fn));  //false