日常js之-对象
本文并不是javascript教程或是说教类文章,纯粹是个人记录自己工作中使用js的一些心得。
在《javascript权威指南》中说到,js中一切皆为对象。那我们总结下 一共有哪些对象,并且都要怎么定义他们,怎么使用他们,怎么扩展他们。
1. 定义对象
首先我们需要知道,我们要怎么定义他们。
1.1 现在最火的json对象:用在方便同ajax交互下.
var json = {"name":"hc","sex":"1"};
//使用www.2cto.com
alert(json.name+" "+json.sex);
为什么json会这么火呢?因为在我没有接触json前.通过ajax返回数据,解析文本串,是通过”|”来的. 例如:
var strResult = ajax.responseText;
//ajax.responseTex为假设存放ajax返回文本. 1|id=’fffff’|name=’ccc’ 如果我要获取name 我就需要 var attr = strResult.split(‘|' )[2]; 这样既不直观也不面向对象。所以 当我接触了json后。一下就替换到字符串分割的这种做法了.
同时顺带说题外话,json字符串格式要求也比较松散 .上面的 var json={“name”} 的 name,可以使用双引号,单引号,甚至不用引号都可以。但是如果你使用jQuery等外带框架来进行解析的时候,则必须带上双引号。如果你使用最松散的方式来解析的话 var json = eval("(“+str+”)”);//这样要求最小,但是容易被注入。
1.2 最原生的对象 : object
var obj = new Object();
//等价的json申明方式就是
var obj = {};
//所以在各大js框架中,基本上看不到new Object()这种写法,都是 obj = {}的写法;简单明了
1.3 最像类的对象: function
function User(name,sex){
//这样是申明类的属性
this.name=name;
this.sex = sex;
//这样是申明类的公共方法
this.getMyFullName=function(){
return _firstname+this.name;
}
//这个是定义类的私有变量
var _name= name;
var _firstname="黄";
//这个是定义类的私有方法
function getSex(){
}
}
定义好一个类,接下来就是实例他的。和C#一样,通过new 类来实例化他
var my = new User("hc","1");
alert(my.name);
alert(my.getMyFullName());
2.扩展对象
在各个js框架中基本都是这么几种方式来定义对象。我们知道怎么定义对象后。就需要知道怎么扩展他们。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>