Monday, September 24, 2012

JavaScript Essential Training Part 6

Operator ေတြနဲ႔အလုပ္လုပ္ျခင္း
arithmetic operators
+ - * /

    + နမူနာ
    score  = score + 10;  //ပထမစာေၾကာင္း
    score  += 10 ;         // ဒုတိယစာေၾကာင္း
    တူတူပါပဲ႔  ဒါေၾကာင္႔က်န္တဲ႔ operator ေတြကိုနည္းနည္းေလးဆက္ေရးၾကည္႔ရေအာင္
    score -=10;
    score *=10;
    score /=10;
ဟီး ေပါက္လား ေဘာင္းဘီ

assignment operator
    =
    နမူနာ
    result = a + b;  // a=3 and b=2 ဆိုရင္ 5 ျဖစ္တဲ႔တန္ဖိုးကို result ထဲကိုထည္႔မယ္ result = 5;
 a နဲ႔  b ေပါင္းတဲ႔တန္ဖိုးကို result ထဲကို assignment operator နဲ႔ထည္႔တယ္


 ဘယ္ operator ကိုအရင္လုပ္မလဲ ကၽြန္ေတာ္တို႔ statement ထဲမွာ operator တစ္ခုထက္ပိုခဲ႔တယ္ဆိုရင္ေကာ
 ဘယ္လိုရွင္းမွာလဲ အဲဒီကိစၥကို
  ဥပမာ result = 5 + 5 * 10;
  အေျဖက ????
    result = 5 + 5 * 10 ;
    55     = 5 +   50  
     
အေပၚကလိုေရးရင္ အေျဖက 55 ျဖစ္သြားမွာေပါ႔ ဘာလို႔လဲဆိုရင္ေတာ႔ေအာက္မွာလာမယ္ ဟီး
ေနာက္တစ္နည္းကအရင္ လုပ္ခ်င္တဲ႔ ကိန္းကို () ထဲကိုထည္႔ျပီးေရးၾကည္႔မယ္

    result= ( 5 + 5 ) * 10;
    100  =     10      * 10


 Equality  အီးကြဲနွစ္ခု ေတာ္ေတာ္နံမွာပဲဂ်
    if ( a  == b ) {
    //အလုပ္လုပ္မယ္႔ code
    }

အဲဒါကို assignment လုပ္ၾကည္မယ္
    var a=5;
    var b=10;
    if ( a = b ) {
    //အျမဲမွန္ေနလိမ႔္မယ္
    }

    ဘာလို႔အျမဲမွန္ေနတယ္လို႔ေရးထားတယ္ဆိုေတာ႔ = တစ္လံုးတည္းဆိုေတာ႔ assignment ျဖစ္ေနလို႔ပါ
   
Operator နဲ႔ =
    =       assignment   //ေပါင္းထည္႔တာ
    ==     equality        //တူညီတာ
    ===  strict equality // လံုး၀ကိုထပ္တူညီရမယ္
   
    နည္းနည္းေရးၾကည္႔ရေအာင္

    var a= 5 ;      //interger ေလးပါ
    var b= " 5 ";  //string ေလးပါ
    if ( a == b ) {
        alert (" Yes, They're equal");
    } else {
        alert ("They're not equal");
    }
    console.log("cyberoot is foo ");


ေအာက္မွာအေျဖေလးကိုၾကည္႔လိုက္ပါဦး



Yes,They're equal ဆိုပဲ႔ string နဲ႔ interger တူတူပဲ႔တဲ႔ တစ္ကယ္ေကာတူလို႔လား ???
ကၽြန္ေတာ္ကိုလာေမးရင္ေတာ႔ မတူပါဘူး string ဆိုတာက စာလံုးေတြ ျပီးေတာ႔ integer ဆိုတာက တားၾကိဳက္တဲ႔ ဂဏန္းေတြ ဟီး စားခ်င္လာျပီ
ဒါဆိုဘာလို႔ Yes လို႔ျဖစ္တာလဲ ???? အေျဖကိုမေျပာခင္ေနာက္တစ္ခုနဲ႔အစားသြင္းျပီးစမ္းၾကည္႔ရေအာင္
ကၽြန္ေတာ္က စမ္းတာဆိုအရမ္း၀ါသနာပါတာဗ်  = အီးကြဲကို ေနာက္တစ္လံုးထပ္ထည္႔မယ္

    var a= 5 ;      //interger ေလးပါ
    var b= " 5 ";  //string ေလးပါ
    if ( a ===    b ) {
        alert (" Yes, They're equal");
    } else {
        alert ("They're not equal");
    }
    console.log("cyberoot is foo ");

   
ေအာက္မွာၾကည္႔ပါဦး အေျဖက ကြာသြားျပီေလ not equal ဆိုပဲ႔ သူကလံုးကိုတူမွရေတာ႔မွာပါ
ေစာေစာတုန္းက integer နဲ႔ string ကိုမိတ္ကပ္လိမ္းျပီး တူသလိုလုပ္ထားေတာ႔ computer ကလည္းမေသခ်ာဘူးဆိုျပီး တူတယ္လို႔ထေအာ္တယ္
အခုေတာ႔ သူေသခ်ာသိသြားပံုပဲ႔  ဟီး



Comparison ေရးပံု
    if ( a== b) {...
    if ( a != b) {...
    if (a===b){...
    if (a!==b) {...
    if ( a > b ){...
    if(    a < b ){...
    if( a >=b){....
    if(    a <=b){...

   
Logical AND / OR
    if ( a === b && c == d ) {...
    if ( a === b || c == d ) {...
    if ( (a > b ) && (c < d )) {...


Modulus
    var year = 2012 ;
    var remainder = year % 4 ;
// remainder က 2
   
     Increment   /   Decrement
    a = a + 1;         a = a - 1;
    a += 1;                a -= 1;
    a++;                        a--;
    ++a;                        --a;

   
Prefix / Postfix
    var a = 5;
    alert (++a); // a တန္ဖိုးကၾကိဳးတိုးထားတဲ႔အတြက္ 6 ေပါ႔
    alert (a++); // a တန္ဖိုးကေနာက္မွတိုးမယ္ဆိုေတာ႔ လက္ရွိက 5 ပါ
  
Ternary
     condition ? true : false
   
နမူနာ

var one = 500;
var two = 600;
var highscore;
if ( one > two ) {
    highscore = one;
    }else{
    highscore = two;
    }

   
ဒီလိုေရးတာကို ternary ပံုစံနဲ႔ျပင္ေရးမယ္

var one = 500;
var two = 600;
var highscore = (one >two ) ? one : two ;


Written By cyberoot.blogspot.com
if you like Google+1 click

   

No comments:

Post a Comment

Thanks for your comments
Welcome from cyberoot