var str = '';
console.log('str:', str.constructor);
var num = 12;
console.log('num:', num.constructor);
var bool = false;
console.log('bool:', bool.constructor);
var obj = {};
console.log('obj:', obj.constructor);
var arr = [];
console.log('arr:', arr.constructor);
function Person() {};
var objNew = new Person()
console.log('objNew', objNew.constructor);
console.log('constructor', Person.constructor);
constructor 属性始终指向创建当前对象的构造函数。
constructor属性和prototype属性
在 JavaScript原型、原型对象、隐式原型 中,我们知道每个函数都有prototype属性,prototype属性的constructor属性会指向这个函数本身。
如果我们重写(重新定义)这个Person.prototype属性,那么constructor属性的指向就会发生改变了。