OOP面向对象程序设计

1、对象:程序中描述现实中一个物体的属性和功能的结构

面向对象的程序设计,即为定义相应对象的属性,实现相应的功能。一个对象专门代表现实中的一个物体。

*封装事物的属性和功能的结构。

例如 我们的手机:属性:

          屏幕大小:5.5
          处理器: A8
          运行内存:2G
          存储:64G
          通讯录:["小张":12312312345,
              "小美":32132154321,
              "小贾":23423423456]    

        功能:打电话(电话号码){}
           发短信(电话号码,msg){}

2、如何创建对象

(1)、直接量创建

var obj={

    属性名1:属性值1,

    属性名2:属性值2,

    方法名1=function(){……},

    方法名2=function(){……}

}

使用:仅创建一个单独的对象时

注意:js底层,所有对象都是用hash数组存储的!

(2)、使用构造函数创建多个统一的结构对象,只需一次定义结构,即可反复创建相同结构的对象

如何使用构造函数:2步:
Step1: 定义构造函数
function 类型名(属性参数1,属性参数2,...){
                  this.属性名1=参数1;
                  this.属性名2=参数2;
                  this.方法名=function(){...}
}
Step2: 调用构造函数函数创建对象!

var Obj=new 类型名(属性参数1,属性参数2);

注意:this指正在创建的对象

new 构造函数的内存现象

    1. new创建空对象
    2. 调用构造函数向新对象中添加属性和方法
    3. 设置新对象的__proto__属性指向构造函数的原型对象
    4. 返回新对象的地址给调用者

(3)、先创建空对象,再设置属性
var obj=new Object(); //创建空对象
obj.属性1=值1;
obj.属性2=值2;
obj.方法=function(){...}
使用:创建对象时,暂时不知道对象中的结构
可先创建空对象,之后逐渐追加属性和方法(一般不使用),

固定套路:遍历对象中所有属性和方法: for in结构

3、判断对象中是否存在指定属性

(1)、 "属性名" in obj:
如果obj是原始类型变量,可new空包装类型对象,再检测
(2) 、 if(obj.方法名===undefined): 属性名不存在
专门验证方法名是否存在——使用最频繁的!
可简写为if(obj.方法名)

 

转载于:https://www.cnblogs.com/rongrongtu/p/5008794.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值