HaxeのJavaScriptターゲット用のビルトイン
Haxe 3.0から __js__() 以外にもいくつか追加されてたらしい。知らんかった。
untyped __js__(js : String) : Dynamic
インラインJavaScript。
var console = untyped __js__("console");
untyped __js__("console.trace()");
untyped __instanceof__(obj : Dynamic, type : Dynamic) : Bool
JavaScriptの"instanceof"。@ktz_aliasさんが、標準APIのStd.is()を使えば良いのではって言ってたけど、本当にそうだと思う。
if (untyped __instanceof([], Array)) { // if ([] instanceof Array) { }
untyped __typeof__(obj : Dynamic) : String
JavaScriptの"typeof"。Haxe 3.1から使えるようになったっぽい。
switch (untyped __typeof__(x)) { // switch (typeof(x)) { case "string": case "number": case "boolean" default: }
untyped __strict_eq__(a : Dynamic, b : Dynamic) : Bool
JavaScriptの"==="。Haxe 3.1から使えるようになったっぽい。
if (untyped __strict_eq__(x, "hoge")) { // x === "hoge" }
untyped __strict_neq__(a : Dynamic, b : Dynamic) : Bool
JavaScriptの"!=="。Haxe 3.1から使えるようになったっぽい。
if (untyped __strict_neq__(x, "fuga")) { // x !== "fuga" }