面向对象编程
面向过程编程
=>按步骤解决问题编程的方式
=> 如: 实现购物车数量加一功能
1. 加按钮绑定事件
2. 找到点击的商品
3. 数量加一
4. 持久化存储数据
function test() {
let str = "javascript-html-css-"
let arr = []
let line = ''
for (let i = 0; i < str.length; i++) {
let chars = str.charAt(i) if (chars != '-') {
line += chars
} else {
if (line !== '') {
arr.push(line)
}
}
}
console.log(arr);
} test1()
面向对象编程
解决问题的一种方式
现实生活中面向对象解决问题方式
=> 找解决问题的对象,调用其功能,解决问题
=> 如果对象不存在,自己创建对象,封装功能,解决问题
注: 自己创建对象,封装功能
创建对象
自己创建对象时
构造函数方式创建对象
1.封装构造函数
1.1 构造函数名首字母大写
1.2 函数体,使用this定义对象属性和方法
注:不要写其它类型的代码
1.3 构造函数方法中的this指向当前对象
2. 通过new语句调用构造函数创建对象
function test1() {
let obj = new Object()
obj.name = 'jack'
obj.age = 20 obj.say = function () {
console.log('说话'); }
obj.say()
}
工厂函数
function createPerson(name, age) {
let person = {
name,
age,
say: function () {
console.log(this.name + '说话');
}
}
return person
}