JavaScript学习之自定义对象
2015-10-31 08:19
691 查看
对象
JavaScript 是面向对象的语言,但 JavaScript 不使用类。在 JavaScript 中,不会创建类,也不会通过类来创建对象(就像在其他面向对象的语言中那样)。
JavaScript 基于 prototype,而不是基于类的。
JavaScript 对象
JavaScript 提供多个内建对象,比如 String、Date、Array 等等。
对象只是带有属性和方法的特殊数据类型。
访问属性或方法
objectName.propertyName
objectName.methodName()
创建自定义对象
有两种方式:直接定义
person = new Object()或者person = new Object;
//添加属性
person.propertyName = value
person={propertyName1:value1,propertyName2:value2…};
//添加方法
person.methodName = methodName;
使用构造函数
person = new Person();
扩展(prototype)
prototype 属性使您有能力向对象添加属性和方法。object.prototype.name = value
三种自定义对象的方式比较
使用直接定义方式,比较直观快捷,可以直接添加属性和方法;但是适合创建单个对象,如果创建多个同类对象,就不合适了。使用构造函数方式,灵活,可以使用prototype添加属性和方法,比较适合作为一个类来用,可以多次调用创建同类对象。
实例
<script type="text/javascript"> //构造函数 function Person(id,name,score){ this.id = id; this.name = name; this.score = score; //添加方法 //this.toString = toString; /* 也可以使用定义内部函数的方式 function toString(){ //JavaScript for...in 语句循环遍历对象的属性。 var string = ""; for (x in this) { string += this[x] + ","; } return string.substring(0,string.length - 1); }*/ } //输出函数 function toString(){ //JavaScript for...in 语句循环遍历对象的属性。 var string = ""; for (x in this) { string += this[x] + ","; } return string.substring(0,string.length - 1); } //1. 直接创建实例 var person = new Object; person.id = 1; person.name = "li ming"; person.score = 89.5; person.toString = toString; //2. 使用literal(文字)创建实例 var p1 = {id:1,name:"li ming",score:89.5}; p1.toString = toString; //3. 使用构造函数创建实例 var p2 = new Person(1,"li ming",89.5); //p2.toString = toString; //使用prototype给对象添加属性或者方法。 Person.prototype.toString = toString; //输出对象 document.write(person.toString()+ "<br/>"); document.write(p1.toString() + "<br/>"); document.write(p1.toString() + "<br/>"); </script>
相关文章推荐
- jsp小结02 - JSP注释、声明、表达式、脚本
- jsp小结01 - JSP基本原理和特性
- js 数组去除的几种方法
- JS--WIKI
- jsp通过自定义标签库实现数据列表显示的方法
- jsp和servlet中实现页面跳转的方式实例总结
- JS实现的简单鼠标跟随DiV层效果完整实例
- JS实现模拟百度搜索“2012世界末日”网页地震撕裂效果代码
- JS实现的3D拖拽翻页效果代码
- JS实现的论坛Ajax打分效果完整实例
- 使用$.getJSON实现跨域ajax请求
- 前端开发学习笔记(一)深入浅出Javascript
- 关于JS一些验证邮箱的一些问题
- Javascript中this关键字详解
- js 基础
- JavaScript基本语法(第一
- 最短路径--Dijstra算法
- javascript入门基础
- js 传参数
- js正则表达式