iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 12
2
Modern Web

JavaScript 初心者筆記系列 第 12

JavaScript 初心者筆記: 判斷式 - 運算子篇

在正式講到判斷式之前,我想要先來簡介一下跟判斷式有關的運算子,畢竟要學習如何用判斷式判斷條件,總要先知道怎麼設條件吧!其實 JavaScript 裡有好幾種類型的運算子,本篇聚焦的是其中兩種:比較運算子及邏輯運算子。


比較運算子

比較運算子會比較兩個值,並依比較的結果回傳 truefalse。 拿來做比較的值可以是數字、字串、布林,或物件。
比較運算子總共有以下這幾個符號:
等於:==
不等於:!==
大於:>
小於:<
大於等於:>=
小於等於:<=

console.log(5 == 6);
// false

console.log(5 !== 6);
// true

= 跟 == 的區別

=:賦予變數一個值(最常見的賦值運算子)
==: 比較兩個值是否相同(比較運算子)

比較運算子 ==、!== 用法

例如,可以先用變數分別記錄要比較的兩個值,宣告第三個變數,用以儲存變數一 ==!== 變數二的值。

var a = 1;
var b = 2;
var c = a !== b;
console.log(c); // true

嚴格等於(===)

== 去判斷兩個值是否相等時,解譯器會自動忽略型別(字串類型、數字類型)的不同,而直接判斷內容是否相等。

console.log(1 == '1');
// true

而且解譯器會自動把數字 1 視作布林值的 ture、把數字 0 視作布林值的 false

console.log(true == 1);
// true
console.log(fasle == 0);
// true

如果使用 === 則能先判斷型別,再判斷內容。

console.log(1 === '1');
// false
console.log('1' === '1');
// true

邏輯運算子

通常在判斷式裡與布林值一起使用。
包含以下三種符號:
&&:and,連接兩個以上的條件,全部條件成立才會回傳 true
||:or,連接兩個以上的條件,只要其中一個條件成立就會回傳 true
!:not,可以把回傳值轉成相反的,例如下面的程式碼

console.log(2>3);
// false
console.log(!(2>3));
// true

注意,判斷兩個以上的條件時,條件跟條件之間必須用 && 跟 || 連接。我有時候會忘記這件事 orz

var a = 1 < 2 < 3; //錯誤寫法
var b = 1<2 && 2<3; //正確寫法

這篇很像廢文,不過明天就真的要講判斷式了><


上一篇
JavaScript 初心者筆記: this 關鍵字
下一篇
JavaScript 初心者筆記: 判斷式 - if...else / switch 篇
系列文
JavaScript 初心者筆記30

尚未有邦友留言

立即登入留言