面向对象1
1.定义
1.对象:描述现实中一个事物的属性和功能的程序结构,同时存储一个事物的多个属性和功能的存储空间 2.面向对象:程序中,都是用对象来描述现实中一个具体事物 3.三大特点:封装,继承,多态
2.this.属性名
1.this 自动指向正在调用函数的.前的对象,不受对象名的影响 2.事件处理函数中,也可用this自动获得触发事件的.前的元素对象本身。
3.创建对象
1. 用{}直接量:
var obj={
属性名:值,
属性名:值,
... : ...
方法名(){ //ES6
... ...
}
}
2. 用new创建
var obj=new Object();//{}
obj.属性名=值;
obj.方法名=function(){ ... this ... };
3. 用构造函数反复创建多个相同结构的对象:
1. 定义构造函数:
function 类型名(属性参数列表){
this.属性名=属性参数;
this.方法名=function(){
... this ...
}
}
2. 用构造函数反复创建多个对象:
var obj=new 类型名(属性值列表)
new: 4件事:
1. 创建新的空对象:
2. ?
3. 调用构造函数,向对象中添加新属性
new自动修改this为正在创建的新对象
4. 返回新对象地址,保存到变量中
练习:创建一个函数,保存学生姓名、年龄和自我介绍
<script>
function Student(sname,sage){
this.sname=sname;
this.sage=sage;
this.intr=function(){
console.log("I'm "+sname+",I'm "+this.sage);
}
}
let lilei=new Student("Li Lei",11);
let wangming=new Student("Wang Ming",13);
console.log(lilei);
console.log(wangming);
lilei.intr();
wangming.intr();
</script>

浙公网安备 33010602011771号