js高级01--面向对象的特性+构造函数+原型+constructor

面向对象的特性

1.封装性

1.1    js 对象就是 无序的键值对的集合

1.2    键值如果是数据( 基本数据, 复合数据, 空数据 ), 就称为属性

1.3    如果键值是函数, 那么就称为方法

1.4     对象就是将属性与方法封装起来

1.5    方法是将过程封装起来

2. 继承性

所谓继承就是自己没有, 别人有,拿过来为自己所用, 并成为自己的东西.

混入式继承:就是将一个对象的值遍历赋值给另一个对象




重要重要重要



动态特性:是指对象创建好后动态的为对象创建属性和方法

//构造函数的返回值

 

 

//1.如果不写返回值,默认返回的是新创建出来的对象 (一般都不会去写这个return语句) 手动return this

 

//2.如果我们自己写return语句 return的是空值(return;),或者是基本类型的值或者null,都会默认返回新创建出来的对象

 

//3.如果返回的是object类型的值,将不会返回刚才新创建的对象,取而代之的是return后面的值

1.构造函数是干什么用的?

在JavaScript中,构造函数是给对象添加属性,初始化属性用的。

2. 对象的创建过程(实例化)

var  p = new Person();

以上面这个p对象创建为例:

    1.首先使用new关键字创建对象,类似于使用{},这个时候创建出来的对象是一个"没有任何成员"的对象。这里需要注意两点:

        1.1使用new关键字创建的对象,对象的类型就是创建这个对象使用的构造函数的函数名

    2.使用{}创建对象,对象的类型一定是Object,相当于使用了new Object()

    3.使用构造函数为其初始化成员

    4.在构造函数调用开始的时候,有一个赋值操作,也就是让this = 刚创建出来的对象

    5.在构造函数中,this就代表刚创建出来的对象

    6.在构造函数中,利用对象的动态特性,为对象添加成员


如果构造函数没有参数,在创建对象/调用的时候可以省略。建议不要省略


问题:var stu = {};创建对象的时候,若需要多个对象使用他中的方法  需要创建多次  这样并不好


理想解决办法:原型(原型也是对象)


构造函数的创建的同时代表原型对象的创建

构造函数是通过本身的prototype这个属性与原型建立起来的关系







若有不足请多多指教!希望给您带来帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值