2016-05-05 11 views
-2

Ich lerne gerade JavaScript-Spiele mit Phaser zu machen und habe eine Frage.Was bedeutet der Doppelpunkt beim Definieren einer js-Funktion?

Ich verstehe nicht, was der Doppelpunkt beim Definieren einer Funktion bedeutet. Zum Beispiel:

attackEnemy: function(player, ground) { 

} 

Und wie ist es anders es so zu tun ...

function attackEnemy() { 

} 
+0

Das erste Beispiel ist, wenn Sie etwas zu einem Objekt zuweisen. Es muss keine Funktion sein. Lesen Sie JavaScript-Objekte, um eine bessere Vorstellung davon zu bekommen, was vor sich geht. Überprüfen Sie den Abschnitt "Objektinitialisierer verwenden" von https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects. – IMTheNachoMan

Antwort

2

Wenn Sie attackEnemy: verwenden, werden Sie es nicht nach außen zu tun. Sie sollten es in einem Objekt tun, sagen:

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

    }, 
    otherProperty: value 
}; 

Ein Objekt function als Mitglied auch haben kann. So definieren Sie Funktionen in den Objekten.

1

Sie können Doppelpunkt-Syntax verwenden, wenn ein Schlüssel für das Objekt, wie diese zu definieren:

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

Wenn Sie eine Funktion als separates Element definieren möchten, können Sie diese (Funktionsdeklaration) tun:

function attackEnemy() { 
} 

oder dass (Function Expression): var attackEnemy = function() {}

+0

Also, wenn Sie den Doppelpunkt verwenden, ordnen Sie effektiv die Funktion AngriffEnemy zu? – user3801329

+1

Sie können den Doppelpunkt nur verwenden, wenn Sie die Funktion einer Objekttaste zuweisen. –