JSON進階二-物件導向的JSON

來源:互聯網
上載者:User

我在這裡使用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的作用不值如此,在不同程式中通訊也有很好的效果,繼續。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.