gpt4 book ai didi

actionscript - var x :* mean in actionscript? 究竟是什么

转载 作者:行者123 更新时间:2023-12-04 16:38:01 27 4
gpt4 key购买 nike

搜索 'var:*' 有点棘手,因为大多数搜索引擎都找不到它。

与 var:Object 相比,我不清楚 var:* 的确切含义

我认为它可以让我在对象上设置任意属性,例如:

var x:*  = myObject;
x.nonExistantProperty = "123";

但这给了我一个错误:
Property nonExistantProperty not found on x

* 究竟是什么意思?

编辑:我将原来的 var:* 修正为正确的 var x:*。失去了我的互联网连接

最佳答案

扩展其他答案,声明带有星号类型的内容与不输入类型完全相同。

var x:* = {};
var y = {}; // equivalent

但是,是否允许将不存在的属性分配给对象的问题与引用的类型无关,而是取决于对象是否是动态类的实例。

例如,由于 Object 是动态的而 String 不是:
var o:Object = {};
o.foo = 1; // fine
var a:* = o;
a.bar = 1; // again, fine

var s:String = "";
s.foo = 1; // compile-time error
var b:* = s;
b.bar = 1; // run-time error

请注意如何始终为对象分配新属性,而不管您使用哪种引用。同样,您永远不能为 String 分配新属性,但是如果您使用类型化引用,则编译器将捕获该引用,并且使用非类型化引用时,编译器不知道 b是否是动态的,所以错误发生在运行时。

顺便说一下,可以在此处找到有关类型星号的文档引用:

http://livedocs.adobe.com/labs/air/1/aslr/specialTypes.html#*



(由于星号,标记引擎拒绝链接它。)

关于actionscript - var x :* mean in actionscript? 究竟是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/207494/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com