1.面向对象概念

  1)什么是面向对象:  oop    是一种编程的思想, 体现的是生活逻辑

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

       2) 面向对象和面向过程:

        面向过程:

        1:大量的全局变量
        2:命名冲突
        3:顺序执行(一步一步一步........)

       面向对象三大特性:封装  继承  多态(js没有多态的)

             js:  封装\抽象\继承(借)

       3) 写js面向对象代码特点:
            高内聚(在一个功能模块里面所有的代码必须紧密相邻)
            低耦合(模块和模块之间尽量 少 关联)

2.构造函数

    构造函数- >   new 对象(实例化对象) ->   存储数据。            注:构造函数(为了区分普通函数和构造函数  构造函数的首字母大写)          构造函数  ->  去实例化对象.      eg:写一个对象去描述一个人
        var person = new Object();
        person.name = 'wangshuai';
        person.age = '20';
        person.show = function(){
            return '好帅'
        }
        去描述100个人(复制?????)   封装起来
            function person(name,age){
                var obj = new Object();         //工厂
                obj.name = name;               //加工
                obj.age = age;
                obj.show = function(){
                    return obj.name;
                }
                return obj;                     //出厂
            }
            var person1 = person('wangshuai','20');
            var person2 = person('xiaom','10');
            var person3 = person('ee','30');
       
            上述代码分析:
                在创建每一个人的时候(调用person),在函数内部每次都会new 一个对象          
            在构造函数里面  实例化对象的时候。 自动return 出一个this   指向当前这个对象。
  3:普通函数 和构造函数的差别:   例:           function person(){    
        return this;
    }     var p1 = new person();    //实例化对象     person构造函数。
    console.log(p1)           普通函数如果函数内部没有return的时候,返回的是一个undefined.
        构造函数如果内部没有return的时候,再实例化的对象的时候(new 对象),自动return出 this 指向当前构造出来的这个对象          4. prototype      
        原型对象:
            记录了一个函数公共的属性和方法。
            可以拓展属性和方法
            节约内存提升性能
            继承属性和方法 例: function Person(name,age){
        this.name = name;
        this.age = age;
    }
    Person.prototype.show = function(){
        this.name;
    }
    var p1 = new Person('ws',10);
    var p2 = new Person('dd',20);
    console.log(p1.show == p2.show)  
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄