嗨嗨~我是914 今天要來學習比較運算子、邏輯運算子GOGOGO
先來閒聊一下(有人想看?)
又來到五月重要的節日辣
母~親~節~
媽媽真的是非常辛苦的角色(爸爸想說:我呢?)
祝大家母親節快樂辣!
不曉得大家母親節有沒有要去哪玩呢?
明天要跟太后娘娘去內灣老街走走
今天要趕快來學習了 :)
還有為甚麼在地震辣!!!!!!
哭哭哭哭哭~超怕(超貪生怕死的辣0.0)
今天來看看比較運算子(===、==、!=、>、<、>=、<=)、邏輯運算子(&&、||、!)
比較運算子(===、==、!=、>、<、>=、<=)
綜合舉例
console.log(3>2)//true
console.log(4<1)//false
console.log(36.3>=37.5)//false
console.log(37.5>=37.5)//true
console.log("hello"=="hi")//false
console.log(1 != 2)//true
比較運算子也能互相比較
let k =2 > 1;
console.log(k);//true
let isWakeup = false;
console.log(isWakeUp)//false
我們來看一下各個比較運算子
我的天QQ 這幾個等於,真的是看到崩潰~
讓我3秒崩潰一下XD
好!來吧!!
==、===
== 鬆散比較 (loose equality)
比較前,會先強制轉換型別跟值
,下面的舉例是因在比較前型別被轉換
而1跟js中的字串"1"是表示不同的值,嚴格來說~是不會相同的。但若使用==會回傳true。
console.log(1 == "1"); // true
console.log(0 == false); // true
console.log(undefined == null); // true
=== 嚴格比較 (strict equality)
不會強制轉換型別與值,所以如果是不同型別,比較兩者會回傳 false。不同值的話一樣會回傳 false。
例外情況: 比較 +0 和 -0時,嚴格比較會回傳 true;以及比較 NaN 和 NaN 會是 false。
而這兩個狀況則是同值比較 Object.is 華麗上場
+0 === -0; // true
NaN === NaN; // false
console.log(5 === 5); // true
console.log(5 === "5"); // false,因為值相同但類型不同der
Object.is 同值比較 (same-value equality)
看看名字,就曉得比較兩個值是不是相等~若遇到===相關的問題,可使用這個同值比較
console.log(Object.is(+0, -0)); // false
console.log(Object.is(NaN, NaN)); // true
!=、!== 不等於
比較兩個值是否不相等。如果兩個值不相等,則返回 true;如果兩個值相等,則返回 false。
let c = 'apple';
let d = 'orange';
let isNotEqual = (c != d); // true
這裡我們使用 != 運算子來比較 c 和 d。
因為它們的值不同 ('apple' != 'orange'),
所以 isNotEqual 的結果為 true
大於等於 (>=)
let r = 8;
let s = 8;
let isGreaterThanOrEqualTo = (r >= s); // true
r 和 s 都是 8。因此 r 等於 s,
所以 isGreaterThanOrEqualTo 的結果為 true。
大於(>)
let p = 7;
let q = 3;
let isGreaterThan = (p > q); // true
在這個例子中,我們比較 p 和 q 的值。因為 7 大於 3,
所以 isGreaterThan 的結果為 true。
小於等於 (<=)
let v = 12;
let w = 12;
let isLessThanOrEqualTo = (v <= w); // true
v 和 w 都是 12,因此 v 等於 w,
所以 isLessThanOrEqualTo 的結果為 true
小於(<)
let t = 5;
let u = 10;
let isLessThan = (t < u); // true
邏輯運算子&&、||、!
&&(邏輯 AND)、||(邏輯 OR)
&& 同時滿足條件
let a = 1;
let b = 2;
console.log(a==2 && b==2);//false
------------------------------------------
|| 滿足其中一個條件
let c = 3;
let d = 4;
console.log(c==4 || d==4);//true
!(邏輯 NOT)
var n1 = !true; // !t 回傳 false
var n2 = !false; // !f 回傳 true
來個實務應用好了~
以下三個條件都要成立,才會回傳true
但我因為沒有買到指定的商品,所以會回傳false
1.消費滿500(含) 2.為VIP 3.買到蛋糕,指定商品
let a = 600;設定買的金額為600元,因為有達到500
let isVip = true;確定是VIP
let buyCake = false;沒有買到指定的商品
console.log(a>=500 && isVip ==true && buyCake==true);//false
let a = 600;設定買的金額為600元,因為有達到500
let isVip = true;確定是VIP
let buyCake = true;有買到指定的商品
console.log(a>=500 && isVip ==true && buyCake==true);//true
我是超級新手,若有任何建議或是錯誤的部分,歡迎底下留言唷thanks
我們下篇文章見掰掰~
對自己多用點心,日益努力,而後風生水起。盡情玩耍,盡情學習,盡情熱愛,盡情討厭,在需要的時候釋放善意,在必要的時候展現強硬,把這不得不過完的一生,變成值得慶賀的一生。
參考資料
https://www.explainthis.io/zh-hant/swe/js-equality
https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Equality_comparisons_and_sameness
https://ithelp.ithome.com.tw/m/articles/10235291
智慧的結晶chatgpt
无论您的学科、主题或最后期限是什么,我们都愿意帮助您完成Essay。我们98%以上的客户保持满意,因为我们从不吝惜我们的服务质量。我们的Essay代写平台是您仅有的正确选择! 我们的专家团队知道如何完成所有学术领域和学术水平的作业。