let map = new Map()
console.log(Object.getPrototypeOf(map))
- 每个对象都有一个
__proto__
属性,指向该对象的原型对象,是每个对象独有的属性。__proto__
的使用从而形成原型链
Object.prototype
是所有对象所共有的属性
- 使用
Object.prototype.toString()
方法获取变量的类型。
javascriptCopy codelet a = 123;
let b = 'hello';
let c = [1, 2, 3];
console.log(Object.prototype.toString.call(a));
console.log(Object.prototype.toString.call(b));
console.log(Object.prototype.toString.call(c));
- 使用
Object.prototype.hasOwnProperty()
方法判断对象是否拥有指定的属性。
javascriptCopy codelet obj = {a: 1, b: 2};
console.log(obj.hasOwnProperty('a'));
console.log(obj.hasOwnProperty('c'));
- 使用
Object.prototype.isPrototypeOf()
方法判断对象是否是另一个对象的原型。
javascriptCopy codelet parent = {a: 1}
let child = Object.create(parent)
console.log(parent.isPrototypeOf(child))
console.log(Object.prototype.isPrototypeOf(child))
- 使用
Object.prototype.valueOf()
方法获取对象的原始值。
javascriptCopy codelet date = new Date()
console.log(date.valueOf())