2012-11-01 16 views
5

Czy ktoś może wyjaśnić różnicę w JavaScript pomiędzy:Zmienne zadeklarowane z „:” zamiast „=”

var x = something 

i

var x : something 

nie mam pojęcia o tym, gdzie/jak szukać o nim .

Widziałem powyższy kod na dole strony 4 niniejszego dokumentu: http://download.unity3d.com/support/Tutorials/2%20-%20Scripting%20Tutorial.pdf

Z góry dzięki!

+0

myślę, że odnoszą się do właściwości obiektów, tak? – Brad

+1

Zobacz tutaj: [Co robi ":" w JavaScript?] (Http://stackoverflow.com/q/418799/102937) –

+1

nie, patrz na stronie 4 tego dokumentu, na dole. http://download.unity3d.com/support/Tutorials/2%20-%20Scripting%20Tutorial.pdf – Saturnix

Odpowiedz

9

Pierwszy przypisuje coś do zmiennej x, a drugi powoduje błąd składni.

Najprawdopodobniej mieszanie przypisywania właściwości w literalnym i normalnym przypisaniu obiektu.

var x = something;//assigning a variable 
var y = { 
    x:something//assigning a object property 
}; 

Edit

var target : Transform; 

wydaje się być UnityScript not JavaScript, wygląda na to, że nie jest przypisanie wartości, lecz ustawić typ zmiennej. zobacz here

+1

strona 4, u dołu http://download.unity3d.com/support/Tutorials/2%20-%20Scripting%20Tutorial.pdf – Saturnix

+2

@Saturnix, które mogą działać w skrypcie Unity, ale nie Javascript –

+0

, więc Unity używa bardziej wyrafinowanych JavaScript? Mój zły, powinienem był powiedzieć, że chodziło o Unity, ale myślałem, że to po prostu JS. Dzięki! – Saturnix

2

Jeśli definiujesz vars w obiekcie, możesz użyć dwukropków.

var obj = {x:my_var}; 
Powiązane problemy