Ho khothaletsoa ho kenyelletsa syntax e nang le tlhaiso-leseling ea mofuta puong ea JavaScript

Microsoft, Igalia, le Bloomberg li nkile bohato ba ho kenyelletsa syntax ho tlhaloso ea JavaScript bakeng sa litlhaloso tsa mofuta o hlakileng, tse tšoanang le syntax e sebelisoang puong ea TypeScript. Hajoale, liphetoho tsa prototype tse reriloeng hore li kenyeletsoe maemong a ECMAScript li romelloa lipuisanong tsa pele (Mohato oa 0). Sebokeng se latelang sa komiti ea TC39 ka March, ho reriloe ho fallela mohato oa pele oa ho nahanisisa ka tlhahiso le ho kenya letsoho ha sechaba sa litsebi se tsoang ECMA.

Ho ba le tlhaiso-leseling ea mofuta o hlakileng ho tla u thusa ho qoba liphoso tse ngata nakong ea ts'ebetso ea nts'etsopele, ho etsa hore ho khonehe ho sebelisa mekhoa e meng ea ho ntlafatsa, ho nolofatsa mokhoa oa ho lokisa liphoso, le ho etsa hore khoutu e balehe le ho be bonolo ho e fetola le ho tšehetsoa ke bahlahisi ba mokha oa boraro. Ts'ehetso ea mofuta e reretsoe hore e kenngoe tšebetsong e le karolo ea boikhethelo - lienjineri tsa JavaScript le linako tsa ho sebetsa tse sa tšehetseng tlhahlobo ea mofuta li tla iphapanyetsa litlhaloso tse nang le tlhaiso-leseling ea mofuta ebe li sebetsana le khoutu joalo ka pele, ho nka data ea mofuta joalo ka maikutlo. Empa lisebelisoa tsa ho hlahloba mofuta li tla khona ho sebelisa tlhaiso-leseling e fumanehang ho tseba liphoso tse amanang le tšebeliso e fosahetseng ea mefuta.

Ho feta moo, ho fapana le boitsebiso ba mofuta o boletsoeng ho sebelisoa litlhaloso tsa JSDoc tse hlalositsoeng ka mokhoa oa litlhaloso, pontšo e tobileng ea mefuta ka ho toba ka mefuta e fapaneng ea litlhaloso e tla etsa hore khoutu e bonahale haholoanyane, e utloisisehe le ho e hlophisa habonolo. Mohlala, li-IDE tse nang le tšehetso ea TypeScript li tla khona ho totobatsa liphoso hang-hang ho khoutu ea JavaScript e thaepileng ntle le liphetoho tse ling. Ho phaella moo, tšehetso ea mofuta o hahelletsoeng e tla etsa hore ho khonehe ho tsamaisa mananeo a ngotsoeng ka lipuo tse thaetsoeng tsa JavaScript, tse kang TypeScript le Flow, ntle le ho fetisetsa puo e 'ngoe ho ea ho e' ngoe.

Ho khothaletsoa ho kenyelletsa syntax e nang le tlhaiso-leseling ea mofuta puong ea JavaScript

Har'a mefuta, ho hlahisoa ho kenyelletsa "khoele", "nomoro" le "boolean", e ka sebelisoang ha ho hlalosoa mefuta-futa, likarolo tsa ts'ebetso, likarolo tsa ntho, masimo a lihlopha, lihlopha tse thaepileng ("nomoro[]"). E boetse e khothaletsoa ho fana ka ts'ehetso bakeng sa mefuta e kopaneng ("khoele | nomoro") le li-generic. let x: khoele; eketsa mosebetsi (a: nomoro, b: nomoro) {khutlisa a + b; } interface Motho {lebitso: khoele; lilemo: palo; } tshebetso foo (x: T) { khutlisetsa x; } mosebetsi foo(x: khoele | nomoro): khoele | nomoro {haeba (mofuta oa x === nomoro) { khutlisetsa x + 1 } e 'ngoe { khutlisetsa x + "!" }}

Source: opennet.ru

Eketsa ka tlhaloso