Javascript面向对象

javascript面向对象:
	* 函数
		* Arguments对象:
			* Arguments对象是数组对象
			* Arguments对象的length属性可以获取参数的个数
			* 利用Arguments对象模拟函数的重载效果(javascript中不存在函数重载)
		* 变量的作用域:
			* 全局变量与局部变量
				* 全局变量:全局域与函数域(局部域)
				* 局部变量:当前函数域
			* 全局域与函数域
			* 定义局部变量时,不使用"var",局部变量变成全局变量
			* 定义全局变量与局部变量同名时,函数域中只能访问局部变量
		* 几种特殊函数:
			* 匿名函数:没有名的函数
			* 回调函数:把一个函数作为参数传递给另一个函数,而作为参数的函数叫做回调函数
			* 自调函数:定义即调用
				* 第一个小括号:封装函数
				* 第二个小括号:调用函数(传参)
			* 内部函数:Java中的内部类
			* 返回函数的函数
	* 闭包
	* 对象
		* 定义对象:
			* 普通对象
				* new Object()
				* var 对象名 = {
					属性名 : 属性值,
					方法名 : function(参数){}
				}
			* 函数对象
				function 对象名(参数){
					this.属性名 = 属性值;
					this.方法名 = function(参数){}
				}
		* 调用对象:
			* 普通对象:
				* 调用:
					* 第一种:
						* 对象名.属性名;
						* 对象名.方法名();
					* 第二种:
						* 对象名['属性名'];
						* 对象名['方法名']();
				* 增加:
					* 对象名.新的属性名 = 新的属性值;
					* 对象名.新的方法名 = 新的function(){}
				* 修改:
					* 对象名.属性名 = 新的属性值;
					* 对象名.方法名 = 新的function(){}
				* 删除:
					* delete 对象名.属性名;
					* delete 对象名.方法名;
			* 函数对象:
				* 概念性理解:
					* 函数对象的概念,实际上是不存在的
					* 函数对象实际上是叫做构造器
					* var 对象名 = new 构造器();
				* 获取到函数对象(构造器)的属性和方法
					* var 对象名 = new 构造器();
					* 调用、修改、删除及增加与操作普通对象一致。
		* 内建对象:
			* 数据封装类对象
				* String、Array、Number等
			* 工具类对象
				* Date、Math等
			* 错误类对象
				* Error、异常对象等
	* 在javascript中,只有对象(变量、方法、集合等)
		* javascript是更纯粹的面向对象
	* 原型(prototype):及其重要(作用)
		* 定义:原型就是一个函数对象的属性。
		* 作用:
			* 利用原型为函数对象增加属性和方法
			* 函数对象的属性或方法与原型的属性或方法同名时:
				* 函数对象本身的属性和方法的优先级要高于原型上的熟悉感和方法
				* 利用函数对象的属性和方法重写原型上的属性和方法
			* 内建对象(应该都是函数对象):都有prototype属性
				* 可以扩展内建对象的属性和方法
			* 实现继承
	* 继承
		* 定义:如果两个类都是同一个实例的类型,那么它们之间存在着某些关系,
		        我们把同一个实例的类型之间的泛化关系称为“继承”。
		* 问题:
			* 在javascript中,是不存在继承的关系的(关键字 extend)!
			* 在javascript中,没有类的概念。
			* javascript就不是一个直接的面向对象语言。
		* "继承":
			* javascript中函数对象与函数对象之间的继承。
			* (了解)javascript中的普通对象之间,是否也存在"继承"关系呢?存在

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值