2012-04-19 72 views
0

我想學習JavaScript對象,我花時間在互聯網上並瞭解JavaScript對象,並且我很困惑什麼是對象的使用以及如何在JavaScript中構建自己的對象。我也看到了一些他們使用自己的自定義對象的JavaScript函數。例如,我有一些代碼。什麼是javascript中的對象

var animationSections = { 
     'intro': 0, 
     'over': 200, 
     'around': 1600, 
     'through': 3500, 
     'share': 5000 
    }; 

我複製上面給出的代碼從一個JavaScript文件是用於動畫和他們使用該對象。

startAt: 0+animationSections.over 

現在我的問題上來了,爲什麼我們使用animationSections.over而我們可以用「200」

+0

我是新來的JavaScript,你可以看到,我問很多問題,在這裏,我得到這個網站的反應就像是老師,我和遺憾關於我的英語我不擅長我的英語。 – Carlos 2012-04-19 04:29:11

+1

你可能想看看面向對象編程(http://en.wikipedia.org/wiki/Object-oriented_programming)是什麼。 JavaScript是基於原型的(http://en.wikipedia.org/wiki/Prototype-based_programming),面向對象的語言。 – Joseph 2012-04-19 04:32:09

回答

1

這將是很好的有一些面向對象的編程background.So你可以瞭解更多更好的here.An對象有屬性。在這個動畫片段中是一個Object。它不是直接說200,而是通過Object.property機制來表示它。這會讓你的代碼更加簡潔和易於維護。而且,在某段時間之後,當你在某段時間重新訪問代碼時,它會有點難以記住或者說爲什麼使用200.但是,如果維持一個對象並說'over',那麼你就能夠識別它的意義,它代表了context.Hope這會幫助你。

1

哪些對象是一個非常大的問題。對象的使用作爲書中的章節進行詳細說明。


要回答你的問題,你可以使用200,而不是animationSections.over

您的示例中對象的主要用途是編寫更多描述/組織代碼的更好方法。儘管如上所述,對象還有許多其他好處(例如循環遍歷屬性,本地化變量,作爲參數傳遞等)。

對象的概念是作爲鍵/值對的變量集合,其中值可以是靜態或甚至函數引用。

1

在JavaScript中,所有不是原始值的東西都是對象。這意味着一個結構可以具有屬性,並且具有(可以具有)它繼承的原型對象。如何構建和使用它們將超出此答案的範圍(short introduction)。


爲什麼我們不使用值200在這裏?

我們可以,但如果我們需要它在其他地方,我們需要重複它。因爲這是一個配置選項,所以我們可能需要在很多地方進行更改,所以我們在這裏使用變量

爲什麼我們不在這裏使用[一組]變量?

我們可以,但使用對象有一定的優勢:

  • 它結構中的數據,在這裏的選項。類似的結構將導致相似的選擇。對於設置特別有用,您可以看到哪些選項屬於一起,在這裏:對於動畫
  • 我們可以使用多個類似的對象(具有相同鍵的對象)。我們無法爲不同的變量使用相同的變量名稱。
  • 我們能遍歷它(沒有必要在這個例子中)
+0

即使是一個函數也是一個對象https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function – Eric 2012-04-19 04:45:00

+0

我說過了嗎?或者你只是錯過了明確的指示? – Bergi 2012-04-19 04:53:52

相關問題