我听说UnityScript非常接近JavaScript。UnityScript 是否支持 JavaScript 的对象文字语法?
例如
var x = {
y: 12
};
奇怪的是,在谷歌上搜索UnityScript "Object Literal"
没有产生有用的结果。
UnityScript 和 JavaScript 具有非常不同的语义。
使用此语法在 Unity 中创建新的 JavaScript 文件将不会编译。
#pragma strict
var x = {
y: 12 // error: BCE0005
};
function Start () {
Debug.Log (x.y); // error: BCE0019
}
这将给出构建错误:
NewBehaviorScript(4,5): BCE0005: 未知标识符: 'y'.
NewBehaviorScript(8,17): BCE0019: 'y' 不是 'Boo.Lang.Hash' 的成员。
但是,您可以实现一个Hashtable
:
#pragma strict
var x:Hashtable = new Hashtable();
x["y"] = 12;
function Start () {
Debug.Log (x["y"]);
}