JavaScript基础-7
类学习
- 类的声明 - 1 
 2
 3
 4
 5
 6- function 类名(形参1,形参2……){ 
 this.属性名1=形参1;
 this.属性名2=形参2;
 ……
 this.属性名=fn
 }
- 类的使用 - var 对象名=new 类名(实参1,实参2……);
- 注意:js中类的内容只是对象的公共部分,每个对象还可以自定义的进行扩充。因此给一个类中没有的属性赋值也是可以的,不赋值使用则是undefeated
 
- 类的”继承”:prototype关键字 - 通过prototype关键字实现了不同对象之间的数据共享。
- 实现某个类的所有子对象的方法区对象的共享,节省内存1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28<script type="text/javascript"> 
 //1、类的声明--person
 function Person(name,age){
 Person.prototype=new User();
 this.name=name;
 this.age=age;
 this.fav="唱歌";//写死
 }
 function User(uname,pwd){
 this.uname=uname;
 this.pwd=pwd;
 }
 //使用prototype
 //Person.prototype.test=function(){alert("嘿嘿")};
 Person.prototype=new User();
 User.prototype.testU=function(){alert("我是user")};
 //User.prototype.student=new Student();
 //2、使用类
 var p1=new Person("张三",32);
 // p1.address="北京市";//类中没有声明的属性赋值
 // alert(p1.address);
 // alert(p1.name);
 var p2=new Person("李四",23);
 // alert(p2.name);
 //alert(p1.test===p2.test);//false;
 alert(p1.test===p2.test);
 p1.testU();
 </script>创建自定义对象
 
- 对象的作用:用来存储整体数据。 
- 原因:很多时候我们没有办法预先知道一个对象应该有哪些属性,所以只能临时的创建一个对象来自定义属性存储数据。来保证数据的完成性 
- 应用: - Ajax中会使用。
 
- 使用: - 创建自定义对象1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11var 对象名=new Object(); 
 对象名.属性名1=属性值1;
 对象名.属性名2=属性值2;
 对象名.属性名3=属性值3;
 ……
 var 对象名={};
 对象名.属性名1=属性值1;
 对象名.属性名2=属性值2;
 对象名.属性名3=属性值3;
 ……
 
- 创建自定义对象
- 一般用来存储数据,不会再自定义对象中存储函数对象。 
- js中的对象属性和内容是可以自定义的扩充的,不是依赖于类的声明的,类只是对象公共部分的一种声明,是为了节省代码的冗余的. 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Kylin!
 评论












