2016-05-05 249 views
-2

我只是學習使用Phaser製作JavaScript遊戲並且有一個問題。定義js函數時冒號是什麼意思?

我不明白定義函數時冒號意味着什麼。例如:

attackEnemy: function(player, ground) { 

} 

而且是如何做這個樣子不同......

function attackEnemy() { 

} 
+0

第一個例子是當你給對象賦值的時候。它不一定是一個功能。閱讀JavaScript對象以更好地瞭解正在發生的事情。檢查https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects的「使用對象初始值設定項」部分。 – IMTheNachoMan

回答

2

當您使用attackEnemy:,你是不是外面做。你應該做一個對象裏面,說:

var game = { 
    attackEnemy: function(player, ground) { 

    }, 
    otherProperty: value 
}; 

對象可以有function作爲成員也是如此。這是您如何定義對象中的函數。

1

定義對象的關鍵時候,這樣你可以用冒號語法:

var object = { 
    attackEnemy: function(player, ground) { 
    } 
} 

當你要定義一個函數作爲單獨的元素,你可以這樣做(函數聲明):

function attackEnemy() { 
} 

或那個(函數表達式): var attackEnemy = function(){ }

+0

所以當你使用冒號時,你是否有效地分配函數來攻擊敵人? – user3801329

+1

只有在將函數分配給對象的某個鍵時才能使用冒號。 –