Mutauro ndiwo
Haxe syntax iri padyo neECMAScript uye
kirasi Muedzo {
static basa guru () {
vanhu vari = [
"Elizabeth" => "Kuronga",
"Joel" => "Gadzira"
];
nokuti (zita muvanhu.keys()) {
var basa = vanhu[zita];
trace('$zita rinoita $basa kuti urarame!');
}
}
}
chikuru
- New syntax yekutsanangura basa remhando "(zita: String, age:Int)-> Bool" kana "(String, Int)-> Bool" pachinzvimbo che "String-> Int-> Bool".
- Arrow function syntax ndeye "(a, b) -> a + b" pane kuti "basa (a, b) dzorera a + b".
- Dziviriro kubva kumatambudziko ane chekuita nekushandiswa kweNull kukosha (yekuyedza chimiro, inogoneswa kune mamwe minda, makirasi kana mapakeji).
- Izwi rekuti "yekupedzisira" ndere minda yekirasi uye zvimiro zvemuno izvo zvisingachinjike. "yekupedzisira" inogona zvakare kushandiswa kutsanangura mabasa ekudzivirira kuti arege kupfuudzwa nenhaka uye kumakirasi/mainterface asingagone kugarwa nhaka.
-
tsigira Unicode chiyero cheiyo base mhando "String" pane ese ekubatanidza zvinangwa kunze kweNeko. - Akavakirwa-mukati muturikiri akanyorwa patsva kubva mukutanga, izvo zvino zvauya pasi pezita
Ongorora . Kutenda kune muturikiri mutsva, zvinyorwa uye macros zvinomhanya zvakanyanya. Interactive debugging mode inotsigirwa. - Nyowani yakananga sisitimu yekubatanidza (chinangwa)
Hashlink -yakanyanya-inoshanda nguva yekumhanya yakagadzirirwa yakanangana neHaxe, inotsigira kuunganidzwa kune bytecode yeJIT kana C, ine nyore kusanganisa neC, pamwe nekuwana yakaderera-nhanho nhamba dzemhando uye anonongedzera. - Chitsva cheJVM chinangwa - chinokutendera kuti ugadzire jvm bytecode nekusvetuka iyo Java kodhi yekubatanidza nhanho nekuwedzera iyo "-D jvm" mureza kana wakananga muJava.
- Iko kugona ku-inline-deploy padanho rekudaidza mabasa kana vagadziri, kunyangwe vasina kuziviswa saizvozvo.
- Kugona kwekubatanidzwa
static extensions paunenge uchizivisa mhando (yakadai se "enum") uchishandisa "@:kushandisa(path.ToExtension)". - Abstract types dzava kutsigira "set" vhezheni ye "@:op(a.b)" mushandisi kurodhazve "obj.foo = bar" mataurirwo.
- Iyo "ye" loop syntax ikozvino inotsigira kiyi-kukosha iteration: "ye (kiyi => kukosha muunganidzwa) {}".
- Tsigiro yekushandisa xml-like markup muzvirevo: "var a = βΉhi/βΊ;". Parizvino, iyi ficha inongowanikwa chete parsing nema macros uye iri padanho rekugadzira.
- Mazwi ezvirevo zvendima dzesarudzo mu "full" notation yemhando yezvimiro zvisingazivikanwe ndeiyi: β{var ?f:Int; }" (imwe nzira yepfupi "{ ?f:Int }").
- Enum values ββzvino inogona kuve yakasarudzika tsika dzebasa nharo: "basa fooβΉTβΊ(sarudzo:SarudzoβΉTβΊ = Hapana)".
- Iyo "enum abstract Name(BasicType) {}" syntax haichadi "@:" prefix mu "enum".
- Kunyora otomatiki kwezvinyorwa zvisinganzwisisiki:
enum abstract Foo(Int) {
var A; // 0
var B; // 1
}
enum abstract Bar(Tring) {
var A; // "A"
var B; // "B"
} - Izwi rekuti "extern" harichadi kushandiswa kwe "@:" prefix.
- Abvisa sarudzo "zvishandiso Dynamic" kuti uwane nzvimbo dzekirasi kuburikidza netambo. Inowanikwa kumakirasi ekunze kana kuburikidza nekushandiswa neabstract type.
- Yakawedzera "A & B" syntax yemhando yemharadzano, iyo parizvino inongoshanda kune zvisingazivikanwe zvimiro uye mhando yeparameter zvipingaidzo. Iyo yekare constraint syntax yakabviswa.
- Kugadzira isina "Mepu" zviitiko zvinowanikwa kuburikidza ne syntax "var mepu:MepuβΉInt, StringβΊ = [];" zvakafanana nearray.
- Yakawedzera data chimiro "haxe.ds.ReadOnlyArray".
- Metadata ikozvino inogona kuve nemazita ("@:prefix.name function() {...}"). Zvakafanana netsanangudzo: "#if (some.flag ... #end".
- Nyowani sevhisi protocol yemaIDE anoshandiswa mukati
plugin yeVSCode . - Yakagadziridzwa tsananguro dzekunze (dzekunze) dzeWebhu API uye yakawedzera asipo.
Source: opennet.ru