您的位置:首页 > Web前端 > JavaScript

javascript面向对象

2017-06-27 20:24 134 查看
什么是对象?

对象(object),台湾译作物件,是面向对象(Object Oriented)中的术语,既表示客观世界问题空间(Namespace)中的某个具体的事物,又表示软件系统解空间中的基本元素。

在软件系统中,对象具有唯一的标识符,对象包括属性(Properties)和方法(Methods),属性就是需要记忆的信息,方法就是对象能够提供的服务。在面向对象(Object Oriented)的软件中,对象(Object)是某一个类(Class)的实例(Instance)。

按照我自己的理解是,世界的万物都是对象,对象是一个整体对外提供一些操作比如:收音机,这就是一个对象

什么是面向对象?

1.不管内部,专注使用,会使用对象的方法即可 2.学会构造新对象。

面向对象,是一种通用思想并非只有编程中能用,任何事情都可以用。

例如,你会使用收音机,但是不需要知道收音机是有什么构成的。

var arr=new Array();
arr就是对象:


js中的面向对象

面向对象编程(OOP)的特点:

1、抽象

抽象的重点在于‘抽’ ,抽的意思就是说抓住核心的东西。最核心的 信息。

2、封装

这里说的封装和函数的封装很相似。这里所说的封装的含义是说别人写好的。以后用的时候不用考虑他内部实现,重点会使用就行。

3、继承

继承就是遗传的意思。就是继承父类的功能,并且还拥有自己的功能。

4.多态

组件的开发

对象的组成

方法——函数:过程、动态的。

属性——变量:状态、静态的。

对象:属性和方法构成的,(其实就是挂载在某个对象上面的变量和函数)

var arr=[1,2,3];
arr.length  //属性
arr.push();//方法


那么怎样写构造函数呢

构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。这是教科书上的解释,可能有的还不太能理解。那么我们就通过几个实例对构造函数做进一步的了解。

如下代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
var obj=new Object();
//比如就拿用户名,密码比较
obj.name='张三';//属性
obj.Password='123456';
obj.showname=function(){//方法
alert(obj.name);
}
obj.showPassword=function(){
alert(obj.Password);
}
obj.showname();//弹出obj中用户名的值
obj.showPassword();//弹出obj中密码的值
//现在是只有一个对象的情况。那如果有两个对象呢用同样的方法
var obj1=new Object();
obj1.name='李四';//属性
obj1.Password='645321';
obj1.showname=function(){//方法
alert(obj1.name);
}
obj1.showPassword=function(){
alert(obj1.Password);
}
obj1.showname();//弹出obj1中用户名的值
obj1.showPassword();//弹出obj1中密码的值

</script>
</head>
<body>
</body>
</html>


什么是工厂方式

用构造函数创建一个类

1.原料:创建一个新的对象

2.加工:为新对象添加属性

3.出厂:返回新对象

什么是原型

原型是一个对象,其他对象可以通过它实现属性继承。

每个函数都有一个prototype属性,这个属性是一个指针,指向一个对象,这个对象的用途是包含可以由特定类型的实例共享的属性和方法。

什么原型链

当从一个对象那里调取属性或方法时,如果该对象自身不存在这样的属性或方法,就会去自己关联的prototype对象那里寻找,如果prototype没有,就会去prototype关联的前辈prototype那里寻找,依次类推,从而形成了所谓的“原型链”。

简单来讲:实例对象与原型之间的连接,叫做原型链

什么是类和对象?

var arr=new Date();


arr叫做对象,Date叫做类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: