本篇厘清了一些我对面向对象的理解误区,说明了“基于类”和“基于原型”作为两种编程范式的区别,感谢。
不过感觉本篇在写的时候有一些地方讲的不够严谨:
1. [[class]]和Symbol.toStringTag实质上是控制的“ the creation of the default string description of an object”,但举例中使用了一个o.toString()来讲述,感觉容易造成误解。
2.在讲解ES6中的类时,文中指出“类中定义的方法和属性则会被写在原型对象之上”,事实上一般数据属性写在对象上,而访问器属性和方法才是写在原型对象之上的。
3.class和extends实质上是作为语法糖,统一了JS程序员对基于类的面向对象的模拟,但感觉文中讲的不是很清楚。
以上是一些个人看法,如有不对的地方欢迎winter老师指正。
展开