JS面向对象基础

====================================================================

什么是面向对象:
使用对象是只关注对象提供的功能,不关注对象内部的细节
比如JQuery


属性 == 变量
方法 == 函数


给一个对象添加事件根本上来说是添加方法
this:当前的方法属于谁this就是谁


不能在系统对象中随意添加方法和属性,否则会覆盖已有方法和属性
要用Object对象来创建,因为它本身没有方法和属性


用this替代对象可以简化构造函数内部的代码

function creatPerson(name,qq){//构造函数

            //当使用函数时前面加上new系统会偷偷创建一个this对象
            // var this=new Object()

            this.name=name
            this.qq=qq

            this.showname=function(){
                alert('我的name是:'+this.name)

            }
            this.showqq=function(){
                alert('我的qq是:'+this.qq)

            }
            //这里也是系统会偷偷返回this
            //return this
        }
      window.onload=function(){

        var obj2=new creatPerson('老李','564564654');
          obj2.showname();
          obj2.showqq();

          var obj3=new creatPerson('小王','5555554');
          obj3.showname();
          obj3.showqq();

      }

===================================================================

原型的解释:

CSS中的class(一次给一组元素加样式)
与JS中的原型一个意思


CSS中的行间样式(一次给一个元素加样式)
与JS中的给对象加事件一个意思


注释:

<script>
        var arr1=new Array(15,22,55,66,44,80)
        var arr2=new Array(1,2,5,6,4,6)

        类Array.prototype.方法名sum=function()//原型与class类似
        // arr1.sum=function()             //与行间样式类似
        {
           var result=0;
           for(var i=0;i<this.length;i++)
           {
               result+=this[i];
           }
            return result
        }


        alert(arr1.sum())
        alert(arr2.sum())
    </script>

======================================================================

类、对象

prototype(原型)
类:模子
对象:产品(成品)

类:本身不具备实际功能仅用于生产产品
对象:具备实际功能,但不能用于生产产品


用构造函数加属性:每个属性不同
用原型加方法:每个人使用的方法相同


混合方式构造对象:

原理:同时使用构造函数和原型
优势:既可以不用在系统对象中添加方法和属性又可以使对象使用的方法是一样的

类名首字母最好要大写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值