2019年第一篇博客 面向对象

本文深入解析JavaScript面向对象编程,阐述其核心概念如封装、继承等,并详细解释JS中普通对象与函数对象的区别,以及如何通过不同方式实现继承。

什么是js面向对象?

1.首先,js面向对象是一种思想;

2.其次,遵循万物皆对象的准则;程序中的关键模块都可以视为对象,对象都是由属性和方法组成,属性可以理解为对象的特征,是静态的,方法可以理解为对象的行为,是动态的;

3.面向对象会使用对象的属性和方法,它不关注内部的细节和过程;同时也会构造对象。

4.在js中,所有的对象可以分为普通对象和函数对象。而Object ,Function 是JS自带的函数对象。凡是通过 new Function() 创建的对象都是函数对象,其他的都是普通对象。

面向对象有什么特点?

1.封装

 封装通俗的说,就是我有一些秘密不想让人知道,就通过私有化变量和私有化方法,这样外界就访问不到了。然后如果你有一些很想让大家知道的东西,你就可以通过this创建的属性看作是对象共有属性和对象共有方法,这样别人知道你的公共的东西啦,不止如此,你还可以访问到类或对象自身的私有属性和私有方法。

2.继承

六大继承

1.原型继承:将父类的实例赋值给子类的原型

这就是原型继承 将父类的私有和公有都继承在子类的原型上,成为子类的公有属性。

2.call继承   将父类私有的继承为子类私有的

3.冒充对象继承 将父类私有的和公有的都继承为子类私有的

4.混合继承 私有的继承为私有的,公有的和私有的再次继承为公有的

混合继承是call和原型继承的结合 私有的被继承了两次

5.组合继承 私有的继承为私有的 公有的继承为公有的

6.中间类继承

arguments 不是一个数组,没有array的那些自带的方法,现在我们想arguments有array的那些方法,将arguments的原型执行Array内置类的原型。

转载于:https://www.cnblogs.com/yangzhiqiang/p/10241353.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值