What is ES6? (ECMAScript 2015 (6th Edition))

web developer ေတြအေနနဲ႔ javascript ကို သိမွာေသခ်ာပါတယ္။ဒါေပမယ့္ ယခုေခတ္စားလာတဲ႔ ES6 ကို ဘာလဲဆိုတာေတာ႔ ေသေသခ်ာခ်ာ သိခ်င္မွ သိပါလိမ့္မယ္။ES 6 အေၾကာင္း မေျပာခင္ javascript ဆိုတာကို အရင္ရွင္းျပခ်င္ပါတယ္။
Javascript ကို စတင္တီထြင္ခဲ႔တာကေတာ႔ Brendan Eich ပဲျဖစ္ပါတယ္။ ပထမဆံုး browser ျဖစ္တဲ႔ Netscape မွာ အလုပ္လုပ္ေနတုန္း တီထြင္ခဲ႔တာပဲျဖစ္ပါတယ္။ ပထမဦးဆံုး mocha လို႔ နာမည္ေပးခဲ႔ၾကတယ္။အဲဒီေနာက္ LiveScript နာမည္ကို ေျပာင္းခဲ႔ၾကတယ္။ေနာက္ဆံုးမွာေတာ႔ Javascript ဆိုတဲ႔ နာမည္တြင္လာခဲ႔ပါတယ္။
ႏို၀င္ဘာ ၁၉၉၆ မွာ Netscape မွ သတ္မွတ္ခ်က္စံ တစ္ခု ထြက္ေပၚလာေစ၇န္ Ecma international အဖြဲ႔အစည္းသို႔ ေပးပို႔ခဲ႔သည္။အဲဒီေနာက္ ECMAScript first edition ေပၚေပါက္လာခဲ႔တယ္။ဒီလိုနဲ႔ ၂၀၀၉ ဒီဇင္ဘာမွာ 5th edition (ES5) ကိုထုတ္ေပးခဲ႔တယ္။ယခု browser ေတြမွာ သံုးေနတဲ႔ standard ပဲျဖစ္ပါတယ္။အဲဒီေနာက္မွာ ဂြ်န္ ၂၀၁၅ မွာ ECMAScript 6th edition (ES6) ထြက္လာခဲ႔ပါတယ္။ ES6 ကို ယခု browser ေတြက ရာႏႈန္းျပည့္ေတာ႔ support မလုပ္ေပးပါဘူး။
Browser ေတြနဲ႔ ပတ္သက္ျပီးထပ္ေလ႔လာၾကည့္ရေအာင္

Browser Javascript Engine ES6 support
Internet Explorer 11 Chakra 11%
Microsoft Edge Chakra 93%
Firefox 50.0 spiderMonkey 92%
Opera 41.0 V8 97%
Chrome 55.0 V8 97%
Safari 10.0 javaScriptCore 100%
Android 5.1 browser v8 25%
ios 10 browser javaScriptCore 100%

Transpiler

Transpiler ဆိုတာကေတာ႔ source code တစ္ခုကေန အျခား source code တစ္ခုကိုေျပာင္းေပးႏိုင္တဲ႔ compiler တနည္းအားျဖင့္ transcompiler ပဲျဖစ္ပါတယ္။ ES6 ဟာ ျပီးဆံုးေအာင္ျမင္စြာ ထြက္ေပၚလာသည့္တိုင္ လက္ရွိ browser အားလံုးက support မလုပ္ေသးပါဘူး။ဒါေၾကာင့္ ES5 ကို ပဲ support လုပ္တဲ႔ browser မွာ ES6 code ေတြအလုပ္လုပ္ေစခ်င္ရင္ transpiler ကိုသံုးႏိုင္ပါတယ္။ Transpiler ေတြဟာ ES6 source code ေတြကို ES5 compatible code ေတြအျဖစ္ ထုတ္ေပးႏိုင္ပါတယ္။ အဲဒီေနာက္မွာမွ browser က ES 5 code ေတြကို interpret လုပ္သြားပါတယ္။
အဓိက အသံုးမ်ားေနတဲ႔ transpiler ႏွစ္မ်ိဳးကေတာ႔
1. Traceur, Google ရဲ႕ project ျဖစ္ပါတယ္
2. Babeljs, လူငယ္ developer  Sabestain McKenzie (၁၇ ႏွစ္) ရဲ႕ ဖန္တီးမႈပဲျဖစ္ပါတယ္။
ေနာက္ပိုင္းမွာေတာ႔ ES6 ကို အသစ္ထြက္ browser ေတြအားလံုး support ေပးလာမယ္လို႔ ေမွ်ာ္လင့္ပါတယ္။


ဖတ္ရႈေပးျခင္းအတြက္ ေက်းဇူးတင္ပါတယ္။ ျပန္လည္မွ်ေ၀ေပးရန္လည္း ေတာင္းဆိုပါတယ္။
ယခု post ေရးသားရာမွာ reference အျဖစ္ https://kangax.github.io/compat-table/es6/ နဲ႔  Become a ninja  with angular 2 စာအုပ္ကိုအသံုးျပဳခဲ႔ပါတယ္။ ထိုစာအုပ္ကို လက္ေဆာင္ေပးေသာ ကိုခ်ိဳေမာင္အားလည္း ေက်းဇူးတင္ မွတ္တမ္းျပဳအပ္ပါတယ္။
Previous
Next Post »

Thorium School

Thorium School
Be professional with us