首頁  >  文章  >  web前端  >  JavaScript物件導向-簡單物件的建立與JSON對象

JavaScript物件導向-簡單物件的建立與JSON對象

黄舟
黄舟原創
2017-01-19 15:03:421205瀏覽

JavaScript是一種基於物件(Object-based)的程式語言,它的本質其實是物件導向。物件導向的語言的特徵是它們都有類別的概念,透過類別可以創建任意多個具有相同屬性和方法的物件。但是在JavaScript中沒有類別的概念,通常稱JavaScript中的對象為原型對象,我們可以直接透過Object來建立對象。例如下面的程式碼:

var person = new Object();
person.name = "张三";
person.age = 20;
person.say = function(){
  alert(this.name+","+this.age);
}

在上面的程式碼中,透過Object簡單的創建了一個person對象,隨後為person對象設定了2個屬性和1個方法。

透過上面的方式創建的對象,帶來的最大問題是由於沒有類別的約束,無法實現對象的重複利用,並且沒有一種約定,在操作是會帶來問題。

 Json對象

我們不能夠在網路中傳輸一個JavaScript對象,在網路中只能夠傳輸字串。一個可行的傳輸物件的方法是將物件編寫為XML格式進行傳輸,例如:

<?xml version="1.0" encoding="utf-8"?>
<preson>
  <id>1</id>
  <name>张三</name>
  <age>20</age>
</person>

但是使用XML格式進行資料傳輸的時候,在傳輸過程中會產生大量的附加標籤字串,這樣的傳輸效率明顯不高。為了解決這些問題,人們研究出了另一種字串物件的格式:Json物件格式。

Json的全名是javascript simple object notation,是一種簡單的資料交換格式。 Json對象就是javascript對象,但是它省略了xml中的標籤,而是透過{}來完成對象的說明。

Json格式透過屬性名稱:屬性值來定義屬性,不同的屬性透過逗號(,)來分隔,最後一個屬性不需要加上逗號。例如下面的程式碼定義了一個Json格式的person物件。

var person = {
  name : "张三",
  age:23,
  say:fuction(){
    alert(this.name+","+this.age);
  }
}

要呼叫person物件的屬性和方法和普通的JavaScript物件使用的方法相同,例如:

// 调用person的say方法
person.say();

我們透過Json也可以建立物件數組,創建的方式和JavaScript的陣列一樣。

var ps = [
  {name:"Leon",age:22},
  {name:"Ada",25}
];

在完成數組的建立之後,我們也可以遍歷數組中的Json物件。

for(var i = 0; i < ps.length; i++){
  alert(ps[i].name);
}

以上就是JavaScript物件導向-簡單物件的創建和JSON物件的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn