我正在尝试使用 openfl 和 haxe 将用 haxe 编写的现有 Flash 应用程序交叉编译为 javascript。
在闪光灯下我可以执行以下操作:
class foo
{
var bar : Int;
public function new()
{
trace(bar); //under flash prints 0, under javascript undefined
}
}
当编译为 javascript 而不是 0 时,我得到 Undefined。
我的问题是,如果构造函数未初始化成员变量,我是否可以使编译打印警告/错误。
更好的是,我可以制作 haxe 我制作它,这样 haxe 就会在 js 中为我将它们初始化为 0。
与 Bool = false、Float = 0 等情况相同,我没有测试过,但也可能使用 Object = null。
该应用有 144 个类和超过 20k 行代码。手动查找和添加显式初始化程序将花费大量时间,这就是我寻找替代方案的原因。
最佳答案
你为什么不这样做: var bar:Int = 0;
除非你有一个真正重要的特定情况(我已经遇到过),否则这不应该是一个大问题:)
关于javascript - haxe未初始化成员变量跨平台不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24215026/