ජාවාස්ක්‍රිප්ට් භාෂාවට වර්ග තොරතුරු සහිත වාක්‍ය ඛණ්ඩය එක් කිරීමට යෝජනා කෙරේ

මයික්‍රොසොෆ්ට්, ඉගාලියා සහ බ්ලූම්බර්ග් විසින් ටයිප්ස්ක්‍රිප්ට් භාෂාවේ භාවිතා කරන වාක්‍ය ඛණ්ඩයට සමාන පැහැදිලි වර්ග නිර්වචන සඳහා ජාවාස්ක්‍රිප්ට් පිරිවිතර තුළ වාක්‍ය ඛණ්ඩ ඇතුළත් කිරීමට මූලිකත්වය ගෙන ඇත. දැනට, ECMAScript ප්‍රමිතියට ඇතුළත් කිරීම සඳහා යෝජිත මූලාකෘති වෙනස්කම් මූලික සාකච්ඡා සඳහා ඉදිරිපත් කරනු ලැබේ (අදියර 0). මාර්තු මාසයේ TC39 කමිටුවේ මීළඟ රැස්වීමේදී, ECMA හි විශේෂඥ ප්රජාවගේ සහභාගීත්වයෙන් යෝජනාව සලකා බැලීමේ පළමු අදියර වෙත යාමට සැලසුම් කර ඇත.

පැහැදිලිව සඳහන් කර ඇති ආකාරයේ තොරතුරු තිබීම සංවර්ධන ක්‍රියාවලියේදී බොහෝ දෝෂ මඟහරවා ගැනීමටත්, අමතර ප්‍රශස්තිකරණ ශිල්පීය ක්‍රම භාවිතා කිරීමටත්, නිදොස්කරණය සරල කිරීමටත්, කේතය වඩාත් කියවිය හැකි සහ තෙවන පාර්ශවීය සංවර්ධකයින් විසින් වෙනස් කිරීමට සහ සහාය දැක්වීමට පහසු කිරීමටත් ඉඩ සලසයි. වර්‍ග සහය විකල්ප අංගයක් ලෙස ක්‍රියාත්මක කිරීමට යෝජිතය - ජාවාස්ක්‍රිප්ට් එන්ජින් සහ ටයිප් චෙක් කිරීම සඳහා සහය නොදක්වන ධාවන වේලාවන් වර්ග තොරතුරු සහිත විවරණ නොසලකා හරින අතර පෙර පරිදි කේතය සකසමින්, වර්ග දත්ත අදහස් ලෙස සලකයි. නමුත් වර්ගවල වැරදි භාවිතය හා සම්බන්ධ දෝෂ හඳුනා ගැනීම සඳහා පවතින තොරතුරු භාවිතා කිරීමට වර්ග පරීක්ෂා කිරීමේ මෙවලම්වලට හැකි වේ.

එපමනක් නොව, අදහස් ආකාරයෙන් නිශ්චිතව දක්වා ඇති JSDoc අනුසටහන් භාවිතයෙන් නිශ්චිතව දක්වා ඇති ටයිප් තොරතුරු වලට ප්‍රතිවිරුද්ධව, විචල්‍ය නිර්වචන ගොඩනැගීම් වල වර්ග සෘජුව දැක්වීම කේතය වඩාත් දෘශ්‍ය, තේරුම් ගත හැකි සහ සංස්කරණය කිරීමට පහසු කරයි. උදාහරණයක් ලෙස, TypeScript සහාය ඇති IDE වලට අමතර පරිවර්තන නොමැතිව ටයිප් කළ ජාවාස්ක්‍රිප්ට් කේතයේ දෝෂ වහාම ඉස්මතු කිරීමට හැකි වේ. ඊට අමතරව, ටයිප් කළ ජාවාස්ක්‍රිප්ට් උපභාෂාවලින් ලියන ලද ටයිප්ස්ක්‍රිප්ට් සහ ප්‍රවාහය වැනි, එක් භාෂාවකින් තවත් භාෂාවකට සම්ප්‍රේෂණය නොකර ක්‍රියාත්මක කිරීමට බිල්ට්-ඉන් ටයිප් සහාය මඟින් හැකි වේ.

ජාවාස්ක්‍රිප්ට් භාෂාවට වර්ග තොරතුරු සහිත වාක්‍ය ඛණ්ඩය එක් කිරීමට යෝජනා කෙරේ

වර්ග අතර, විචල්‍ය, ශ්‍රිත පරාමිති, වස්තු මූලද්‍රව්‍ය, පන්ති ක්ෂේත්‍ර, ටයිප් කළ අරා (“අංක[]”) අර්ථ දැක්වීමේදී භාවිතා කළ හැකි “string”, “number” සහ “boolean” එකතු කිරීමට යෝජනා කෙරේ. ඒකාබද්ධ කළ වර්ග (“string | අංකය”) සහ සාමාන්‍ය සඳහා සහය ලබා දීමට ද යෝජනා කෙරේ. ඉඩ x: string; එකතු කිරීමේ කාර්යය (a: අංකය, b: අංකය) { ආපසු a + b; } අතුරුමුහුණත පුද්ගලයා {name: string; වයස: අංකය; } කාර්යය foo (x: T) {ආපසු x; } ශ්‍රිතය foo(x: string | අංකය): string | අංකය { if (xyoftypeof === number) { return x + 1 } else { return x + "!" } }

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න