Что является значением “:” (символ двоеточия) на этом коде JavaScript “var switchToTarget: Преобразуйте”;?

Просто удивление, что является значением ":" (символ двоеточия) на этом коде JavaScript ниже?

var switchToTarget : Transform;

Спасибо, Gino

5
задан Rune Vejen Petersen 26 August 2014 в 08:45
поделиться

3 ответа

Редактировать: Читая больше о Unity, они создали действительно пользовательскую реализацию JavaScript(1) для своего скриптового движка, который компилируется и имеет много сильно типизированных возможностей, он выглядит как ActionScript/ES4, но это не так, язык называется UnityScript.

Двоеточие используется в этой реализации для обозначения типа идентификатора, например:

class Person{
   var name : String;
   function Person(n : String){
      name = n;
   }
   function kiss(p : Person){
      Debug.Log(name + " kissed " +  p.name + "!");
   }
}

См. также:


Код, который вы опубликовали, не является действительным ECMAScript 3 (это самый распространенный стандарт), это просто выдаст вам SyntaxError.

Символ двоеточия в JavaScript имеет всего несколько вариантов использования:

  1. Синтаксис объектного литерала:

    var obj = { foo: 'bar' };
    
  2. Условный оператор условный оператор:

    var test = condition ? 'foo' : 'bar';
    
  3. Маркированные операторы:

    loop1: while (true) {
     while (true) {
     break loop1; // остановить внешний цикл
     }
    }
    
  4. Клаузулы case и default оператора switch:

    switch (value) {
     case "foo":
     //..
     break;
     default:
     //..
     break;
    }
    
  5. Может появляться на RegExp литералах:

    var re = /(?:)/; // неперехватывающая группа...
    
13
ответ дан 18 December 2019 в 09:05
поделиться

Это Adobe ActionScript, производный от javascript.

var switchToTarget: Transform; // объявляем var switchToTarget типа Transform.

var hello: Text = new Text (); // объявляем var hello типа Text и инициализируем его.

http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/flash/geom/Transform.html

4
ответ дан 18 December 2019 в 09:05
поделиться

Я не уверен, что это часть стандартного JavaScript, но это объявляет тип переменной.

var myVar:Type;

в этом варианте JavaScript было бы эквивалентно этому в нескольких сильно типизированных языках:

Type myVar;
1
ответ дан 18 December 2019 в 09:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: