我听说UnityScript非常接近JavaScript。 UnityScript是否支持JavaScript的Object Literal语法?
e.g。
var x = {
y: 12
};
奇怪的是,在Google上搜索UnityScript "Object Literal"
会产生无效结果。
答案 0 :(得分:7)
UnityScript versus 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"]);
}