zoukankan      html  css  js  c++  java
  • JSON进阶二面向对象的JSON

    我在这里使用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的作用不值如此,在不同程序中通信也有很好的效果,继续。

  • 相关阅读:
    五种提高 SQL 性能的方法
    join 使用详解方式
    关于MagicAjax的用法
    收藏几段SQL Server语句和存储过程
    ubuntu nfs配置 以及mount.nfs:access denied by server while mounting问题解决
    Hisi开发板上 SQLite3.3.8移植
    父进程非阻塞回收子进程(适用LINUX下C语言的clientserver模型)
    busybox asm/page.h: No such find.
    ubuntu11.10 samba服务器配置
    errno定义
  • 原文地址:https://www.cnblogs.com/KangC/p/1349148.html
Copyright © 2011-2022 走看看