构造函数模式自己定义js对象

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
/*
* 自己定义javascript对象一:
定义一个函数的时候,首字母大小,默觉得构造函数了 构造函数模式:
格式:function MyObject(){
......js code......
}
怎样遍历对象的属性:for in
*/
//定义一个函数的时候,首字母大小,默觉得构造函数了
function MyObject(){ }
var myobj=new MyObject();
//------------------------------------
//this:指的就是该对象创建出来的实例对象(在javascript要摈弃类的概念)
function Student(name,age){
this.name=name;
this.age=age;
//给对象加入函数类型的属性
this.getAge=function(){
return this.age;
};
this.setAge=function(age2){
this.age=age2;
};
}
var stu1=new Student("胡哥","秘密");
alert(stu1.name);
stu1.setAge(18);
alert(stu1.getAge());
//给新对象加入属性-这种写法也是ok的啦
stu1.setName=function(name){
this.name=name
}
//-----------构造方法模式的优缺点------------------
//1.使用简单
//2.缺点:全部新创建的代码,都有同样的代码块,造成浪费空间
//遍历对象的属性
for(tt in stu1){
alert("属性:"+ttt);
}
</script>
</head>
<body> </body>
</html>
上一篇:js面向对象、创建对象的工厂模式、构造函数模式、原型链模式


下一篇:JS构造函数模式