Skip to content

【前端】原型模式 ​

这里主要是学习js中的原型和原型链 ​

不是真的【原型模式】

代码演示 ​

原型和原型链 ​

函数(class)都有显式原型prototype ​

对象都有隐式原型__proto__ ​

对象的隐式原型__proto__指向其构造函数的显式原型prototype ​

原型链drawio示意图原型链示意图 ​

Object.create() ​

{}和Object.create({})的区别 ​

  • {}的隐式原型指向Object.prototype
  • Object.create({})的隐式原型,指向传入的这个对象(一改则均改)

快链-浅拷贝和深拷贝(对比学习) ​

对象属性描述符 ​

Object.getOwnPropertyDescriptor,深拷贝有用过,看上面的链接 ​

Object.freeze ​

  • Object.isFrozen

Object.seal(密封,不能添加属性) ​

  • Object.isSealed

enumerable ​

  • 是否可以for...in遍历
  • 属性 in 对象 还是会返回true

如何遍历Symbol属性 ​

getOwnPropertySymbols(obj) ​

  • 只出来Symbol属性

Reflect.ownKeys(obj) ​