AS3 中有啥奇怪的语法。为啥这会使我的浏览器挂起//静默崩溃

Posted

技术标签:

【中文标题】AS3 中有啥奇怪的语法。为啥这会使我的浏览器挂起//静默崩溃【英文标题】:What's this strange syntax in AS3. Why does this make my browser hang//crash silentlyAS3 中有什么奇怪的语法。为什么这会使我的浏览器挂起//静默崩溃 【发布时间】:2020-07-23 05:46:11 【问题描述】:

我在 AS3 中偶然发现了这一点。

while(y.t<ys) y.(y.t++, 0);

我想知道,这个奇怪的点括号语法 .() 是什么?它应该做什么?

此外,我在浏览器中尝试了包含此代码的 sn-p 代码,这使 Flash 挂起//静默崩溃。 知道为什么吗?

谢谢你

编辑:原代码在那里as3-crypto

ps:我会推断它是某种点符号,后跟逗号运算符,但我现在不能确定。

【问题讨论】:

AS3 中 .() 的唯一用法是 E4X XML 表达式中的过滤器运算符:help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/… 不过,您的示例不是它,可能只是错误的. 从as3-crypto那里拿来的。该库似乎工作正常。 好的,我找到了答案:github.com/timkurvers/as3-crypto/issues/14 实际上它从来没有出现在我身上,我会在同一个 repo 上找到答案,如果我只是粘贴它,我会在谷歌上找到答案。非常感谢。由于这种语法的作用可能会一直无人回答。也许您可以将您的评论重新发布为答案,以便我验证它 【参考方案1】:

所以,我对那件事进行了一些调查。首先,我找到了提到的as3crypto repo 并检查了给定的代码行是否确实存在。该行没有以任何方式记录在案,在 AS3 术语中仍然没有实际意义。

其次,我用反编译器查看了部署的 SWC 库,再一次,这个地方没有任何意义并且出现格式错误,这可能表明该库最初不是在AS3 但可能在 HAXE 中。

最后,我转到repo issues部分寻求向所有者询问该线路的方法,但后来我注意到这样一个问题已经存在:https://github.com/timkurvers/as3-crypto/issues/14

因此,结论与我最初宣布的相同:它不是任何有效的 AS3 语法,可能只是 repo 中的一个错误(可能是翻译错误)。

【讨论】:

以上是关于AS3 中有啥奇怪的语法。为啥这会使我的浏览器挂起//静默崩溃的主要内容,如果未能解决你的问题,请参考以下文章

为啥这个 angularjs ui-router 代码会使我的浏览器崩溃?

为啥我的 unwind segue 会使我的应用程序崩溃?

为啥 __inbyte 会使我的软件崩溃?

为啥这个旧的依赖会使我的 gradle 崩溃?

为啥添加导航控制器会使我的数组消失?

为啥这个 WHERE 子句会使我的查询慢 180 倍?