面向对象其实是一种编程思想,是一种写代码的套路。其中涉及的知识点比较多,大概就是以下几个方面吧。
封装
封装面条式代码,隐藏细节
继承
同类部分不再重复,可重复用
原型链
默认生成的对象中都有一个__proto__ 指向 函数的原形
this
永远不要在一开始就很确定this是什么 ,不到最后调用传参,你永远不知道this是什么
new
用法: new fn()
解析:new 构造函数(), 创建一个对象, 对象可能存在构造函数中定义的 私有属性和方法
当然new 里面也有一些写法含义的小区别:(举例如下)
function fn(){} //没有return 则默认返回函数创建 的对象
function xx(){return {then: function(){}}} //有return , 覆盖掉上面的默认的对象 ,表示new xx()表达式的结果
也是常说的 js之父的关怀, 我的理解 大约就是因为js之父创建了一套完整的‘流程’ 只要你new一下, 就可以完成一系列加工一个新对象的操作了。
详细补充,稍后更新
网友评论