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

Acticle 11:javascript面向对象:js的面向对象

2016-10-19 17:39 393 查看
什么是js的面向对象呢?

面向对象就是面向对象就是具有抽象、封装、继承的示例,它由方法和属性组成。举个例子吧:比如Date函数,里面就有很多的方法可以调用。我们不用了解它里面的代码,还可以自己构造函数。

面向对象有三大特点:

a.抽象性–抓住核心问题

b.封装性–不考虑内部实现,只考虑功能使用

c.继承性–从已有对象上,继承出新的对象

构造函数编写:

首先是基本的对象创建:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
window.onload=function(){
var obj=new Object();//创建一个新对象
obj.name='华宇'//object对象的属性
obj.age=22;

obj.showName=function()//object对象的方法
{
alert(obj.name);
}
obj.showAge=function()
{
alert(obj.age);
}

obj.showName();//调用object对象的方法
obj.showAge();
}
</script>
</head>
<body>
</body>
</html>


创建一个对象可以使用上面例子,但是如果是多个对象的创建呢?会不会觉得很繁琐,这时就需要给对象来个构造函数,构造函数后,创建多个对象 时,就可以直接调用构造函数了

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
window.onload=function(){
//              var obj=new Object();//创建一个新对象
//              obj.name='华宇'//object对象的属性
//              obj.age=22;
//
//              obj.showName=function()//object对象的方法
//              {
//                  alert(obj.name);
//              }
//              obj.showAge=function()
//              {
//                  alert(obj.age);
//              }
//
//              obj.showName();//调用object对象的方法
//              obj.showAge();

function person(name,age)
{//构造函数
var obj=new Object();
obj.name=name;//方法
obj.age=age;

obj.showName=function(){//属性
alert(this.name);//这里的this指的是当前的对象,即为obj
}
obj.showAge=function(){
alert(this.age);
}
return obj;
}

var obj=person('张三','23');//调用person函数,传入数据
obj.showName();
obj.showAge();

var obj=person('李四','25');//调用person函数,传入数据
obj.showName();
obj.showAge();

//alert(obj.name==obj.name);//弹出两个对象的属性名:obj.name
}
</script>
</head>
<body>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: