正しいか間違っているか?
この章にはたくさんの新しいことがありますが、それほど難しいことではありません。結局のところ、一般的に、すべては単純なアイデアを中心に展開しています-本当ですか、それとも間違っていますか?
これまで、私たちは常にプリミティブデータ型(数値と文字列)のみを扱ってきました。 プログラミングで「プリミティブ」という用語に出くわしたことがありますか?そうでない場合は、説明します。「プリミティブ」(「シンプル」とも呼ばれます)は、このデータ型がオブジェクトではなく(ここに戻ります)、組み込みの作業メソッドがないことを意味します(つまり、 、関数⚙️)。
間違いなく必要になるデータ型はブール値と呼ばれます boolean
, または論理的。ブール型は常にどちらかが重要です true
- true、または false
- 誤り。そして、この方法だけで、他には何もありません!彼は嘘をついているか、真実を語っています-パンするか消えるか、ライトがオンかオフか、またはあるかどうか。あなたは宿題をしたか、しなかったかのどちらかです。 2️⃣の値は2つだけ true
または false
.
等式演算子
ブール値は、で何かを比較する必要がある場合に便利です JavaScript. 必要に応じて、すぐに比較演算子を呼び出します。
ここで、8つの比較演算子すべてを順番に調べますが、それぞれの結果として、私たちは気にしません。
常にブール値が残ります-どちらか true
, または false
.
同様に ==
equals演算子は、最初にオペランドを同じ型にキャストしてから、厳密な比較を適用します。両方のオペランドがオブジェクトの場合、JavaScriptは、メモリ内の同じオブジェクトを参照している場合に等しい内部参照を比較します。
構文 :
x == y
の例:
1 == 1 // true
'1' == 1 // true
1 == '1' // true
3 == 5 // 誤り
0 == false // true
'foo' == 'bar' // 誤り
例を1つずつ変数に入力します bool
私たちの LIVE EDITOR
等しくない !=
オペレーターが戻らない true
オペランドが等しくない場合。これは等式演算子に似ており、比較する前にオペランドを同じ型に変換します。両方のオペランドがオブジェクトの場合、 JavaScript メモリ内の異なるオブジェクトを参照している場合、等しくない内部参照を比較します。
構文 :
x != y
の例:
1 != 2 // true
1 != '1' // 誤り
1 != '1' // 誤り
1 != true // 誤り
0 != false // 誤り
'foo' != 'bar' // true
例を1つずつ変数に入力します bool
私たちの LIVE EDITOR
厳密に等しい ===
演算子は オペランドが厳密に等しい場合はtrue。 equals演算子とは異なり、この演算子はオペランドを同じ型にキャストしません。
構文 :
x === y
の例:
3 === 3 // true
3 === '3' // 誤り
'foo' === 'foo' // true
演算子は、値とタイプの両方が厳密に同一であることを確認します。の場合には 3 === '3'
もちろん、値は同じですが、型は異なります。結局のところ、最初は数値で、2番目は文字列です。
例を1つずつ変数に入力します bool
エラー LIVE EDITOR
厳密に等しくない !==
厳密に等しくない演算子の戻り値 オペランドが等しくない場合、またはそれらの型が互いに異なる場合はtrue。
構文 :
x !== y
の例:
3 !== '3' // true
4 !== 3 // true
例を1つずつ変数に入力します bool
私たちの LIVE EDITOR
使ってみませんか ==
そして !=
? しかし、一般的に、そのような必要性は決してないからです。あなたがそれらを使うことができるときはいつでも、あなたは常に厳格なものを使うことができます ===
そして !==
. 回答にもっと柔軟性が必要な場合(たとえば、 1
, そうと '1'
そうと true
), 次に、コード自体に必要な回答オプションを含めることができます (変更せずに ===
).
絶対に使用しないでください ==
または !=
比較演算子
もっと >
演算子は詳細を返します 左側のオペランドの値が右側の値よりも大きい場合はtrue。
構文 :
x > y
の例:
4 > 3 // true
1 > 5 // 誤り
例を1つずつ変数に入力します bool
に LIVE EDITOR
もっと少なく <
「バグ」という言葉 「バグ」という言葉
構文 :
x < y
の例:
3 < 4 // true
5 < 2 // 誤り
例を1つずつ変数に入力します bool
私たちの LIVE EDITOR
多かれ少なかれ >=
以上の演算子、戻り値 左側のオペランドの値が右側のオペランドの値以上の場合。
構文 :
x >= y
の例:
4 >= 3 // true
3 >= 3 // true
例を1つずつ変数に入力します bool
:
以下 <=
以下の演算子、戻り値 左側のオペランドの値が右側のオペランドの値以下の場合はtrue。
構文 :
x <= y
の例:
3 <= 4 // true
3 <= 3 // true
例を1つずつ変数に入力します bool
:
条件付き構成
「まあ、このブール論理のことはすべて非常に簡単でした...おそらくかなり役に立たず、あまり使用されない」と考えているに違いありません。どんなに!ブール値は、プログラミングで常により頻繁に使用され、ほとんどの場合、条件(または式)の形式で使用されます。
「条件付き構築」とは何ですか?
良い質問!条件文は、特定のコードブロックを実行するために使用される句です。 指定された条件に従って。状態(例えば、比較するときx === y
) 常に戻ります ブール値-どちらか true
, または false
. したがって、値がtrue
, 次に、コードを実行する必要があります。それ以外の場合は、コードブロックをスキップする必要があります。いくつかの例を見てみましょう。
の条件式 if
設計 if
満たす 命令1
, 条件があれば true
, 条件があれば false
, その後、実行されます 命令2
.
構文 :
if (調子) {
コードで1
} else {
コードで2
}
調子
-
trueまたはfalseのいずれかの式。
コードで1
-
値が 調子
本当に true
. ネストされたものを含む任意の命令にすることができます if
. アクションが不要な場合は、空のステートメントを使用できます。
コードで2
-
値が 調子
値が false
. ネストされた命令を含む、任意の命令にすることができます if
. 命令はブロックにグループ化することもできます。変数で年を変更する whatIsTheYearNow
出力に注目してください.
if
ブール値だけでなく
条件式は、ブール値だけでなく、正確でない値でも機能します。 true
または false
したがって、一般に、ブール値だけでなく、括弧内でも安全に使用できます。
- ゼロを除くすべての整数 —
true
- 少なくとも1文字の文字列
true
- 空の文字列は
false
試してみましょう、値を変数に入れます bool
:
式の比較演算子 if
これまで、比較または条件付きを扱ってきました if
, しかし、これまで一緒に使用したことはありませんが、単にお互いのために作られています!
いくつかの条件 else if
場合によっては、条件のいくつかのバリエーションを確認する必要があります。このために、ブロックが使用されます else if
. 年を変更して出力を確認する.
条件付き(3値)演算子 ?
3つのオペランドを受け入れる唯一のJavaScript演算子: 調子
, 疑問符が続きます ?
, その後 表現
, 条件が真の場合は真で、その後にコロンが続きます :
,そして最後に, 表現
, これは、条件がfalseの場合にtrueになります。条件文の省略形としてよく使用されます if
.
構文 :
調子 ? 表現1 : 表現2
パラメーター:
調子
- 価値を帯びる表現 true
または false
.
式1
, 式2
- 値が任意のタイプである可能性がある式.
例 :
問題?
に書く Discord または電報 チャット, また、私たちの購読 ニュース
質問と回答:
equal演算子ではどの構文が使用されていますか?
x == y
x = y
x -- y
その場合、演算子は等しくないリターン true
?
- オペランドが等しくない場合
- オペランドが等しい場合
- 両方のオペランドがオブジェクトの場合
演算子は、厳密に等しいとはどのように異なりますか?
- 厳密に等しいとは、オペランドを同じ型にキャストしません
- 厳密に等しいキャストオペランドを同じタイプに
- 値が同一であることを厳密に確認しますが、タイプは同一ではありません
厳密に等しくない演算子の構文は何ですか?
!=
!==
==!
どちらの場合、演算子はより多くのfalseを返しますか?
- 左側のオペランドの値が右側の値よりも大きい場合
- 右のオペランドの値が左のオペランドの値よりも大きい場合
- オペランドの値が同じ場合
以上の演算子の構文は何ですか?
>=
> =>
> <=
以下の演算子はどの例でtrueを返しますか?
4 <= 5
5 <= 4
3 <= 2
状態とは何ですか?
- 指示
- 発現
- 価値
条件の複数のバリアントをテストするために使用されるブロックはどれですか?
else if
if
for
どの演算子が3つのオペランドを取りますか?
- 条件付き(三項)演算子
- 以上
- 以下
このレッスンをどれだけ学んだかを理解するために、でテストを受けてください モバイルアプリ このトピックに関する私たちの学校。
リンク:
- MDN web docs - Операторы сравнения
- 十代の若者たちのためのコード:プログラミングの完璧な初心者向けガイド、ボリューム 1: Javascript - Jeremy Moritz
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Dmitriy Vasilev 💵 | Resoner2005 🐛 🎨 🖋 |