4

UnityScriptはJavaScriptにかなり近いと聞きました。UnityScriptはJavaScriptのオブジェクトリテラル構文をサポートしていますか?

例えば

var x = {
    y: 12
};

不思議なことに、グーグルで検索してUnityScript "Object Literal"も有用な結果は得られません。

4

1 に答える 1

7

UnityScript と JavaScriptのセマンティクスは大きく異なります。

この構文を使用して Unity で新しい JavaScript ファイルを作成すると、コンパイルされません。

#pragma strict

var x = {
    y: 12 // error: BCE0005
};

function Start () {
   Debug.Log (x.y); // error: BCE0019
}

これにより、ビルド エラーが発生します。

NewBehaviourScript(4,5): BCE0005: 不明な識別子: 'y'。
NewBehaviourScript(8,17): BCE0019: 'y' は 'Boo.Lang.Hash' のメンバーではありません。

ただし、次を実装できますHashtable

#pragma strict

var x:Hashtable = new Hashtable();
x["y"] = 12;

function Start () {
   Debug.Log (x["y"]);
}
于 2012-11-15T04:55:20.577 に答える