演算子と比較

ショッピングカートを追跡していると想像してください。価格を合計し、割引を適用し、合計額が送料無料の基準を超えているかを確認し、カートが空の場合に警告を表示するかどうかを判断します。これらの各ステップは演算子が機能しています:1つまたは2つの値を取り、新しい値を生成する記号です。この章では、数値の算術演算から値を比較し、真偽値のテストを組み合わせるまで、常に使用する演算子について説明します。
算術と代入
**算術演算子**は、既に知っている数学を実行します:+は足し算、-は引き算、*は掛け算、/は割り算です。もう1つあります。%は剰余演算子で、割り算の後に残ったものを与えてくれます。
const total = 8 + 5; // 13
const change = 20 - 13; // 7
const leftover = 17 % 5; // 2、5は17に3回入って2が残るため
console.log(total); // 13値をそれ自身に基づいて更新したい場合、省略記法があります。score = score + 10の代わりに、score += 10と書くことができます。同じ意味です:現在の値を取得し、10を加え、結果を保存します。
let score = 100;
score += 10; // scoreは110になります
score -= 30; // scoreは80になります
console.log(score); // 80そして数値を正確に1だけ上下に移動するには、++と--が1つのステップで実行します。count++は1を加え、count--は1を引きます。
let lives = 3;
lives--; // livesは2になります
console.log(lives); // 2%を加えます。値をそれ自身から更新するときは、省略記法に達します:score = score + 10の代わりにscore += 10。そして++または--は数値を1だけ上下に押し上げます。これらを信頼するのに少し時間がかかりましたが、それらは短く書かれた同じ数学です。 比較
**比較**は2つの値について質問をし、trueまたはfalseで答えます。これらの真偽の答えはブール値で、プログラムが後で決定を下すために使用するものです。
最も使用する比較は===で、これは「これら2つは正確に等しいか?」と問いかけます。
const answer = 42;
console.log(answer === 42); // true
console.log(answer === 7); // falseその反対は!==で、「これら2つは異なるか?」と問いかけます。そして順序については<、>、<=、>=があり、数学と同じように機能します:未満、より大きい、以下、以上。
const age = 18;
console.log(age >= 18); // true
console.log(age !== 21); // true===で比較します。==は決して使いません。ダブルイコール版は人々を驚かせるニュアンスを持っており、トリプルイコール版は毎回予想通りにできます。
trueまたはfalseで答えます。等式を確認するには===を使用し、「異なる」場合は!==を、順序については<、>、<=、>=を使用してください。===を守り、==をスキップしてください。ダブルバージョンにはサプライズがあり、トリプルバージョンは動作するからです。 論理演算子とtruthiness
多くの場合、複数の比較を組み合わせる必要があります。**論理演算子**がそれを行わせます:&&(および)、||(または)、!(ではない)。
&&は両側がtrueの場合にのみtrueです。||は少なくとも1側がtrueの場合にtrueです。!はブール値をその反対にフリップします。
const age = 20;
const hasTicket = true;
console.log(age >= 18 && hasTicket); // true、両方ともtrue
console.log(age < 13 || hasTicket); // true、1側で十分
console.log(!hasTicket); // false、フリップされたtruthy and falsyと呼ばれる関連する概念があります。真偽の設定では、JavaScriptは非ブール値の一部を、それらがfalseのように扱います。falsy値はfalse、0、""(空の文字列)、null、undefined、およびNaNです。他のすべてはtruthyとしてカウントされます。
const name = "";
console.log(!name); // true、空の文字列はfalsy&&は「両方」、||は「どちらか」、!はブール値をフリップします。その上、JavaScriptはいくつかの値を偽のように扱います:false、0、""、null、undefined、およびNaNがfalsyで、他のすべてはtruthyです。これにより!nameは「名前が与えられなかった」を意味します。 演算子はここからどこに行くか
演算子は言語の動詞です:保存する値を取り、結果と決定に変えます。算術は新しい数値を生成し、比較はブール値を生成し、論理演算子はそれらのブール値を、プログラムが機能するはい・いいえの答えに組み合わせます。
これらのブール値は単独ではあまり機能しません。次のステップは、それらを使用してコードをステアリングし、チェックが成功するとき1つのブランチを実行し、失敗するときは別のブランチを実行します。これは条件文章についてです。ここの値のいずれかが曖昧に感じた場合、データ型章は数値、文字列、ブール値の完全な処理です。

