ECMAScript အခြေခံ အကျဉ်းချုပ်
- အရှေ့စာရင်း ပေါင်းစပ်အယူအယောင်သတ်မှတ်သူ
- နောက်ပိုင်းစာရင်း အတူတူအယူအယောင်သတ်မှတ်သူ
关系运算符执行的是比较运算。每个关系运算符都返回一个布尔值。
常规比较方式
关系运算符小于、大于、小于等于和大于等于执行的是两个数的比较运算,比较方式与算术比较运算相同。
每个关系运算符都返回一个布尔值:
var bResult1 = 2 > 1 //true var bResult2 = 2 < 1 //false
不过,对两个字符串应用关系运算符,它们的行为则不同。许多人认为小于表示“在字母顺序上靠前”,大于表示“在字母顺序上靠后”,但事实并非如此。对于字符串,第一个字符串中每个字符的代码都与会第二个字符串中对应位置的字符的代码进行数值比较。完成这种比较操作后,返回一个 Boolean 值。问题在于大写字母的代码都小于小写字母的代码,这意味这着可能会遇到下列情况:
var bResult = "Blue" < "alpha"; alert(bResult); //အပြန်ပေး
အထဲတွင် အခြေခံအမှတ် "Blue" က "alpha" ထက် နည်းပါသည်၊ သို့သော် အက်စ် အစိတ် အလိုက် ကုဒ်များ က လိုက်လျောမှု အလိုက် ကုဒ်များ က ပေါ်လွင်ကြည်း သင့် ပေါ်လွင်ကြည်း သို့ သဘောပေးပေးပါ၏။
var bResult = "Blue".toLowerCase() < "alpha".toLowerCase(); alert(bResult); //输出 false
把两个运算数都转换成小写,确保了正确识别出 "alpha" 在字母顺序上位于 "Blue" 之前。
比较数字和字符串
另一种棘手的状况发生在比较两个字符串形式的数字时,比如:
var bResult = "25" < "3"; alert(bResult); //输出 "true"
上面这段代码比较的是字符串 "25" 和 "3"。两个运算数都是字符串,所以比较的是它们的字符代码("2" 的字符代码是 50,"3" 的字符代码是 51)。
不过,如果把某个运算数该为数字,那么结果就有趣了:
var bResult = "25" < 3; alert(bResult); //输出 "false"
这里,字符串 "25" 将被转换成数字 25,然后与数字 3 进行比较,结果不出所料。
无论何时比较一个数字和一个字符串,ECMAScript 都会把字符串转换成数字,然后按照数字顺序比较它们。
သင့် အဆိုပါ ကိုယ်စားပုံ က အမှတ်သုံး အသုံးပြုနိုင်ချေ မဟုတ် သော်လည်း အဆိုပါ ကိုယ်စားပုံ က အချင်းချင်း ပြန်လည်ပေးသည် NaN ဖြစ်သည်။ အခြေခံပြဿာဗိုက်များ အားဖြင့် အချင်းချင်း ပြန်လည်ပေးသည် NaN အချင်းချင်း အယူအယောင်သတ်မှတ်သူ များ အား ပြန်လည်ပေးသည် false ဖြစ်သည် အစိုးရရှိသော ကိုယ်စားပုံ က ပြန်လည်ပေးသည် false
var bResult = "a" < 3; alert(bResult);
သင် အဆိုပါ ကိုယ်စားပုံကို ပြင်ဆင်နိုင်ပါလားလို့ သင့် ကြည်ညိုပါ။ အစိုးရရှိသော "a" ကို အမှတ်သုံး အသုံးပြုနိုင်ချေ မဟုတ် သော်လည်း အဆိုပါ ကိုယ်စားပုံ က အချင်းချင်း ပြန်လည်ပေးသည် NaN ဖြစ်သည်။ အခြေခံပြဿာဗိုက်များ အားဖြင့် အချင်းချင်း ပြန်လည်ပေးသည် NaN အချင်းချင်း အယူအယောင်သတ်မှတ်သူ များ အား ပြန်လည်ပေးသည် false ဖြစ်သည် အစိုးရရှိသော ကိုယ်စားပုံ က ပြန်လည်ပေးသည် false
var bResult = "a" >= 3; alert(bResult);
ပုံမှန်အားဖြင့် အသုံးပြုသော အယူအယောင်သတ်မှတ်သူ နှစ်ခုမှ အချင်းချင်း ကျဆင်းသော အချင်းချင်း အယူအယောင်သတ်မှတ်သူ ပြန်လည်ပေးသည် false ပြန်လည်ပေးသည် မဟုတ် သော်လည်း တခုခုသည် NaN ဖြစ်သည် မူကား အခြေခံပြဿာဗိုက်များ အားဖြင့် ပြန်လည်ပေးသည် false ပြန်လည်ပေးသည်
- အရှေ့စာရင်း ပေါင်းစပ်အယူအယောင်သတ်မှတ်သူ
- နောက်ပိုင်းစာရင်း အတူတူအယူအယောင်သတ်မှတ်သူ