__proto__是一个内部属性,不是一个正式的对外的API
- 在操作原型对象时应该
a.使用Object.getPrototypeOf()代替读取操作,
b.使用Object.setPrototypeOf()代替设置操作。
获取对象原型
function User(){}
let u = new User()
u.__proto__ === Object.getPrototypeOf(u);
设置对象原型
let a = {}
a.__proto__ = {b:1}
相当于
Object.setPrototypeOf(a,{b:1})