回答
除了少數基本類型(數字,字符串,布爾值,null和未定義)之外,所有東西都是JavaScript(甚至函數)中的對象。
對象基本上是屬性的容器,這對於收集和組織數據非常有用。
一種流行的方法創建對象是使用對象的文字符號:
var emptyObject = {};
var myFirstObject = {
'name': 'Bobby',
'surname': 'Smith'
};
各地的屬性名引號是可選的,如果名稱將是一個合法的JavaScript標識符,而不是保留字。屬性的名稱可以是任何字符串。對象可以包含其它對象,因此它們可以很容易地表示的樹或圖:
var myFlight = {
'airline': 'Airline Name',
'number': 'AN700',
'departure': {
'IATA': 'SYD',
'time': '2010-09-04 23:10:00'
},
'arrival': {
'IATA': 'LAX',
'time': '2010-09-05 05:14:00'
}
};
JavaScript對象也恰好是一個方便的hash table數據結構。你可以很容易地做到以下幾點:
var myHashTable = {};
myHashTable['name'] = 'Bobby';
myHashTable['surname'] = 'Smith';
alert(myHashTable['name'] + ' ' + myHashTable['surname']);
這絕對不是一個詳盡的答案,但我希望它會做進一步的研究,當你朝着正確的方向發展。
這正是我所說的。對象有什麼特別之處(你在代碼中顯示的類型)? – chromedude 2010-09-05 01:32:44
@Daniel Vassallo感謝您的更新。我現在明白了。 – chromedude 2010-09-05 01:37:37
@chromedude:再次更新。提到了散列表,這非常有用。 – 2010-09-05 01:40:41
好,最好的信息源是ECMAScript規範(當然):)
在JavaScript中有6種類型的....其中5是原始的和第六類型是對象。對象是所有函數,所有數組,主對象(如窗口對象,文檔對象,每個DOM節點),內置的構造函數對象(Date,Error,...),其他內置對象(Math,JSON )...
當有人說JavaScript對象時,通常他是指ECMAScript規範第15章中定義的本地對象。
簡短回答:如果你用「一切都是一個物體」的話來說,它會有所幫助。
較長的答案:
JavaScript有「數據」(例如,您的變量「約翰」和它所包含的值)和「功能」(即對數據採取行動的Javascript代碼位)。
「對象」是一種將「數據」和「功能」結合在一起的編程結構。 「對象」是一個比「數據」或「功能」分開考慮的更強大的結構。例如,「形狀」對象(「對象類」)可能知道如何「繪製」自己(「對象方法」),而不管它是「方形」,「圓形」還是「圓形」 「三角形」(所有「對象實例」)。
正如Daniel Vassallo在上面指出的那樣,「對象」也可以是「屬性的容器」。
'Hope that helps
「out there」在哪裏? – 2010-09-05 01:16:00
這是關於JSON或一般對象的問題嗎? – 2010-09-05 01:16:24
你能更具體嗎?如果你想在JavaScript中提供對象列表 - 你去:http://www.devx.com/projectcool/Article/19993 – Sorantis 2010-09-05 01:18:13