javascript 声明对象的方式
2012-12-05 20:37
190 查看
(1):通过new操作符作用域Object对象,构造一个新的对象;然后动态添加属性,从无到有的构建一个对象‘
(2):定义对象的“类”原型,然后使用new操作符来批量的构筑新的对象。
//定义一个类Address
function
Address(street,xno){
this.street=street
|| 'A Road';
this.xno=xno
||35;
this.toString=function(){
return
"street----"+this.street+",xno---"+this.xno;
}
}
//定义一个类Person
function
Person(name,age,addr){
this.name=name
|| "unknow";
this.age=age;
this.addr=addr
|| new Address(null,null);
this.getName=function(){
return
this.name;
}
this.getAge=function(){
return
this.age;
}
this.getAddr=function(){
return
this.addr.toString();
}
}
//通过new操作符来创建对象;注意这两个对象是相对独立的实体
var jack=new
Person('jack',26,new Address('qinghaiRoad',123));
var ab=new
Person('ab',26);
alert(jack.getName());
alert(jack.getAge());
alert(jack.getAddr());
alert(ab.getName());
alert(ab.getAge());
alert(ab.getAddr());
可加以断点调试看看...对于"||"我不是很理解,那是默认值,请高手讲解...
(3):使用json来构建
json(javascript Object
Notation),即通过字面来表示一个对象,从简单到复杂的使用此方式。
var
obj={
name:"ab",
age:26,
birthday:new
Date(1984,12,12),
addr:{
street:"qinghai
Road",
xno:"135"
}
}
这种方式,显然比第二种声明类,在类中添加对象简洁的多,很清晰了表达了obj这样一个对象的结构。事实上,大多数有经验的javascript程序员更倾向与使用这中表示方法,包括很多的javascript的工具包,如JQuery,和Extjs等都大量的使用Json。Json事实上已经作为了一种前端与服务器端数据交换格式.前端程序通过Ajax发送Json对象到后端,服务器脚本对Json进行解析,还原成服务器对象,然后做了一些处理,反馈给前端的仍然是Json对象,使用同一数据格式,可以降低出错的几率。
而且Json格式数据本身也是可以递归的,可以任意的表达复杂的数据格式。Json写法很简单,即用花括号括起来的是键值对,键值对通过冒号隔开,而值可以是任意的javascript对象;如简单对象String,Boolean,Number,Null,或者是复杂对象如Date,Object,其他自定义对象等.....
json的另一个应用场景是:当一个函数拥有多个返回值,在传统的面向对象的语言中,我们需要组织一个对象,然后返回,而javascript则完全不需要这么麻烦.
function Point(left,top){
this.left=left;
this.top=top;
return {x:this.left,y:this.top};
}
直接动态的构建一个新的匿名对象返回就OK了. var
pos=Point(2,3);
使用json返回对象,这个对象可以有任意复杂的结构,设置可以包括函数对象。在实际编程中,我们通常需要遍历一个JavaScript对象,
事先我们对对象一无所知,我们可以通过for...in形式的语法糖....
for(var
item in json){
//item为键
//Json[item]为值
}
(2):定义对象的“类”原型,然后使用new操作符来批量的构筑新的对象。
//定义一个类Address
function
Address(street,xno){
this.street=street
|| 'A Road';
this.xno=xno
||35;
this.toString=function(){
return
"street----"+this.street+",xno---"+this.xno;
}
}
//定义一个类Person
function
Person(name,age,addr){
this.name=name
|| "unknow";
this.age=age;
this.addr=addr
|| new Address(null,null);
this.getName=function(){
return
this.name;
}
this.getAge=function(){
return
this.age;
}
this.getAddr=function(){
return
this.addr.toString();
}
}
//通过new操作符来创建对象;注意这两个对象是相对独立的实体
var jack=new
Person('jack',26,new Address('qinghaiRoad',123));
var ab=new
Person('ab',26);
alert(jack.getName());
alert(jack.getAge());
alert(jack.getAddr());
alert(ab.getName());
alert(ab.getAge());
alert(ab.getAddr());
可加以断点调试看看...对于"||"我不是很理解,那是默认值,请高手讲解...
(3):使用json来构建
json(javascript Object
Notation),即通过字面来表示一个对象,从简单到复杂的使用此方式。
var
obj={
name:"ab",
age:26,
birthday:new
Date(1984,12,12),
addr:{
street:"qinghai
Road",
xno:"135"
}
}
这种方式,显然比第二种声明类,在类中添加对象简洁的多,很清晰了表达了obj这样一个对象的结构。事实上,大多数有经验的javascript程序员更倾向与使用这中表示方法,包括很多的javascript的工具包,如JQuery,和Extjs等都大量的使用Json。Json事实上已经作为了一种前端与服务器端数据交换格式.前端程序通过Ajax发送Json对象到后端,服务器脚本对Json进行解析,还原成服务器对象,然后做了一些处理,反馈给前端的仍然是Json对象,使用同一数据格式,可以降低出错的几率。
而且Json格式数据本身也是可以递归的,可以任意的表达复杂的数据格式。Json写法很简单,即用花括号括起来的是键值对,键值对通过冒号隔开,而值可以是任意的javascript对象;如简单对象String,Boolean,Number,Null,或者是复杂对象如Date,Object,其他自定义对象等.....
json的另一个应用场景是:当一个函数拥有多个返回值,在传统的面向对象的语言中,我们需要组织一个对象,然后返回,而javascript则完全不需要这么麻烦.
function Point(left,top){
this.left=left;
this.top=top;
return {x:this.left,y:this.top};
}
直接动态的构建一个新的匿名对象返回就OK了. var
pos=Point(2,3);
使用json返回对象,这个对象可以有任意复杂的结构,设置可以包括函数对象。在实际编程中,我们通常需要遍历一个JavaScript对象,
事先我们对对象一无所知,我们可以通过for...in形式的语法糖....
for(var
item in json){
//item为键
//Json[item]为值
}
相关文章推荐
- 002_JavaScript对象定义方式剖析——北京圣思园JavaScript&jsUnit&Ajax&jQuery
- JavaScript 对象 值传递
- javascript 对象类型
- 创建你自己的 JavaScript 对象
- 【javascript笔记】声明函数的三种方式<二>
- javascript&nbsp;浅析&nbsp;对象&nbsp;function
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第11章节--为Office和SP解决方式开发集成Apps Office的JavaScript对象模型
- JavaScript&nbsp;对象学习零碎知识记录
- javascript 对象,对象数组转成字…
- JavaScript&nbsp;String&nbsp;对象参考手册
- JavaScript声明一个对象的三种方式
- JavaScript&nbsp;字符串(String)对象
- JavaScript 三种创建对象的方法
- JavaScript&nbsp;Boolean(逻辑)对象
- JavaScript&nbsp;Math&nbsp;对象的参考手册
- JavaScript&nbsp;RegExp&nbsp;对象
- javascript&nbsp;对象&nbsp;属性
- JavaScript&nbsp;HTML&nbsp;DOM&nbsp;对象
- javascript调用HTTPS&nbsp;Webservice:1…
- javaScript js 在客户端 本地生成…