“:”是什么意思? (冒号符号)在此 Javascript 代码“var switchToTarget : Transform;”上?

发布于 2024-09-06 19:58:33 字数 120 浏览 6 评论 0原文

只是想知道下面这段 Javascript 代码中的“:”(冒号符号)是什么意思?

var switchToTarget : Transform;

谢谢, 吉诺

Just wondering what's the meaning of ":" (colon symbol) on this Javascript code below?

var switchToTarget : Transform;

Thanks,
Gino

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

吲‖鸣 2024-09-13 19:58:33

编辑:阅读有关 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 测试 = 条件? 'foo' : '酒吧';
    
  3. < p>带标签的语句

    loop1: while (true) {
      而(真){
        中断循环1; // 停止外循环
      }
    }
    
  4. Case switch 语句的默认子句:

    开关(值){
      案例“foo”:
        //..
      休息;
      默认:
        //..
      休息;
    }
    
  5. 它可以出现在RegExp 文字上:

    var re = /(?:)/; // 非捕获组...
    

Edit: Reading more about Unity, they have created a really custom implementation of JavaScript(1) for their scripting engine, which is compiled and it has a lot of strongly typing features, it looks like ActionScript/ES4, but it isn't, the language is called UnityScript.

The colon is used by this implementation to denote the type of an identifier, e.g.:

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

See also:


The code you posted is not valid ECMAScript 3, (which is the most widely implemented standard), that will simply give you a SyntaxError.

The colon symbol in JavaScript has only a few usages:

  1. The object literal syntax:

    var obj = { foo: 'bar' };
    
  2. The conditional operator:

    var test = condition ? 'foo' : 'bar';
    
  3. Labeled statements:

    loop1: while (true) {
      while (true) {
        break loop1; // stop outer loop
      }
    }
    
  4. Case and default clauses of the switch statement:

    switch (value) {
      case "foo":
        //..
      break;
      default:
        //..
      break;
    }
    
  5. It can appear on RegExp literals:

    var re = /(?:)/; // non-capturing group...
    
雨后彩虹 2024-09-13 19:58:33

它是 Adob​​e ActionScript,它是 javascript 的衍生版本。

var switchToTarget : 变换; // 声明 Transform 类型的 var switchToTarget。

var 你好: Text = new Text(); // 声明 Text 类型的 var hello 并初始化它。

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

It's Adobe ActionScript, which is a derivative of javascript.

var switchToTarget : Transform; // declare var switchToTarget of type Transform.

var hello : Text = new Text(); // declare var hello of type Text and initialize it.

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

唠甜嗑 2024-09-13 19:58:33

我不确定它是否是标准 JavaScript 的一部分,但它声明了变量的类型。

var myVar:Type;

在那种 JavaScript 风格中,这相当于几种强类型语言中的:

Type myVar;

I'm not sure if it's part of standard JavaScript, but it declares the type of a variable.

var myVar:Type;

in that flavor of JavaScript would be equivalent to this in several strongly-typed languages:

Type myVar;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文