JSON进阶二-面向对象的JSON
2011-11-29 19:29
411 查看
我在这里使用JQuery的extend来表现JSON的面向对象形式。
例如有个JSON结构:
<script src="jquery-1.2.6.min.js"></script>
<script>
var People = {
name: '',
sex: 0,
birth: '',
Speak: function() {
var sexCN = this.sex == 1 ? '男' : '女';
alert('我叫:' + this.name + ',' + sexCN + '性,出生于:' + this.birth);
}
};
var p1 = $.extend({}, People, { name: '张三', sex: 1, birth: '2007-1-1' });
var p2 = $.extend({}, People, { name: '李四', sex: 2, birth: '2007-2-1' });
p1.Speak();
p2.Speak();
</script>
$.extend 方法是JQ的一个方法,可以看下JQ的API,包括:EXT在内很多JS框架都会有类似extend方法,$.extend({},People,{name:'',sex:1,birth:'2007-1-1'});类似于C#的继承,你也可以把它理解为new了个新对象。
同样的你也可以重写Speak方法。
<script src="jquery-1.2.6.min.js"></script>
<script>
var People = {
name: '',
sex: 0,
birth: '',
Speak: function() {
var sexCN = this.sex == 1 ? '男' : '女';
alert('我叫:' + this.name + ',' + sexCN + '性,出生于:' + this.birth);
}
};
var p1 = $.extend({}, People, { name: '张三', sex: 1, birth: '2007-1-1' });
p1.Speak();
p1 = $.extend(p1, {
Speak:function(){
alert('我姓'+this.name.substr(0,1)+'名'+this.name.substr(1,1));
}
});
p1.Speak();
</script>
但JSON的作用不值如此,在不同程序中通信也有很好的效果,继续。
例如有个JSON结构:
<script src="jquery-1.2.6.min.js"></script>
<script>
var People = {
name: '',
sex: 0,
birth: '',
Speak: function() {
var sexCN = this.sex == 1 ? '男' : '女';
alert('我叫:' + this.name + ',' + sexCN + '性,出生于:' + this.birth);
}
};
var p1 = $.extend({}, People, { name: '张三', sex: 1, birth: '2007-1-1' });
var p2 = $.extend({}, People, { name: '李四', sex: 2, birth: '2007-2-1' });
p1.Speak();
p2.Speak();
</script>
$.extend 方法是JQ的一个方法,可以看下JQ的API,包括:EXT在内很多JS框架都会有类似extend方法,$.extend({},People,{name:'',sex:1,birth:'2007-1-1'});类似于C#的继承,你也可以把它理解为new了个新对象。
同样的你也可以重写Speak方法。
<script src="jquery-1.2.6.min.js"></script>
<script>
var People = {
name: '',
sex: 0,
birth: '',
Speak: function() {
var sexCN = this.sex == 1 ? '男' : '女';
alert('我叫:' + this.name + ',' + sexCN + '性,出生于:' + this.birth);
}
};
var p1 = $.extend({}, People, { name: '张三', sex: 1, birth: '2007-1-1' });
p1.Speak();
p1 = $.extend(p1, {
Speak:function(){
alert('我姓'+this.name.substr(0,1)+'名'+this.name.substr(1,1));
}
});
p1.Speak();
</script>
但JSON的作用不值如此,在不同程序中通信也有很好的效果,继续。
相关文章推荐
- JSON进阶二-面向对象的JSON
- JSON进阶二--面向对象的JSON
- Android开发-进阶:Json字符串转换为java对象的各种实现方法[json_lib框架、Gson、org.json]
- 【Python进阶】03、json
- JSON进阶五-JS和WCF的交互
- Python面向对象进阶之高级编程
- 在net中json序列化与反序列化 面向对象六大原则 (第一篇) 一步一步带你了解linq to Object 10分钟浅谈泛型协变与逆变
- 我的Android进阶之旅------>解决Jackson等第三方转换Json的开发包在开启混淆后转换的实体类数据都是null的bug
- python_day6面向对象(进阶)
- 面向对象的JavaScript(二) — 静态类及JSON
- JS面向对象(2) -- this的使用,对象之间的赋值,for...in语句,delete使用,成员方法,json对象的使用,prototype的使用,原型继承与原型链
- 【Android 一般进阶】固定JSONObject.toString()键值对顺序
- js进阶学习之--面向对象(一)
- python学习-面向对象进阶之元类(三)
- 前端进阶-----JSON简介(1)
- js基础进阶2-1 面向对象(类与对象介绍)
- js基础进阶2-2 面向对象(类与对象的创建与使用)
- 我的Android进阶之旅------>解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题
- 面向对象的JSON