1.编程思想
面向过程(POP):分析解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一步一步调用就行了
面向对象(OOP):把事物分解成一个个对象,然后由对象之间分工合作(找出对象出来,然后写出这些对象的功能)
面向过程的性能比较高,适合和硬件联系很紧密的东西,如单片机,缺点是难维护、难拓展、难复用
面向对象的代码灵活,代码可复用性高,容易维护和开发,更适合多人合作的大型软件项目
面向对象:封装性(直接使用,不需要了解内部)、继承性、多态性(通过继承 + 不同的拓展)
JS的类
JavaScript只有一些近似类的语法元素,比如class关键字
但是这并不意味着JavaScript实际上有类,但是类是一种设计模式,所以我们可以用一些方法实现近似类的功能
2.面向对象
1.抽取对象公共属性和行为组织封装成一个类(class)
class name { class body }
2.对象实例化,获取类的对象(对象是特指某一个,实例化的具体对象)
var xx = new name() // 利用类创建对象
对象由属性和方法构成
(1)class关键字创建类,类名习惯定义首字母大写
(2)constructor()
是类的构造函数(默认方法),用于传递参数,返回实例对象,通过new命令生成对象实例时,自动调用该方法,如果没有明显定义,类内部会自动给我们创建一个constructor()
(最好自己写上constructor)
class Star {
constructor(uname, age) {
this.name = uname;
this.age = age;
}
}
var xxx = new Star('xxx', 20);
假如一个函数进行多次 bind
呢?
let a = {}
let fn = function () { console.log(this) }
fn.bind().bind(a)() // => ?
类里添加方法
1.在类里面构造函数,不需要加function
2.多个方法、函数之间不需要添加逗号进行分割
class Star {
constructor(uname) {
this.name = uname;
}
init() {
//xxxx
}
}
未完待续!!! 如果觉得这篇文章对您有帮助 请一键三连 关注博主(*^▽^*)