面向对象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>

 

posted @ 2020-11-17 21:17  you_rgb  阅读(120)  评论(0)    收藏  举报
//一下两个链接最好自己保存下来,再上传到自己的博客园的“文件”选项中