LoginSignup
1
0

More than 1 year has passed since last update.

chatGPTと学ぶJavaScript 第1週:JavaScriptの基礎〜演算子編〜

Last updated at Posted at 2023-03-17

こちらの続きです

さて、今回は演算子について学んでいきたいと思います。

演算子

演算子とは

演算子、簡単で身近なものだと「+」とか「−」とかですかね。
色々種類があるみたいなので、まずはchatGPT先生に確認してみましょう。

JavaScriptにおける演算子について、詳しく説明してください。

chatGPTの答え
JavaScriptにおける演算子は、様々な種類があります。
以下に代表的な演算子を紹介します。
代数演算子
代数演算子は、数値の計算に用いられます。

演算子 説明
+ 加算 1 + 2 // 3
- 減算 3 - 2 // 1
* 乗算 2 * 3 // 6
/ 除算 6 / 3 // 2
% 剰余 7 % 3 // 1

比較演算子
比較演算子は、値の比較に用いられます。真偽値を返します。

演算子 説明
== 等しい 1 == 1 // true
!= 等しくない 1 != 2 // true
=== 厳密に等しい 1 === 1 // true
!== 厳密に等しくない 1 !== "1" // true
> より大きい 2 > 1 // true
>= 以上 2 >= 2 // true
< より小さい 1 < 2 // true
<= 以下 2 <= 2 // true

論理演算子
論理演算子は、複数の真偽値の結果を組み合わせます。

演算子 説明
&& 論理積(AND) true && false // false
|| 論理和(OR) true || false // true
! 否定(NOT) !true // false

代入演算子
代入演算子は、変数に値を代入します。

演算子 説明
= 代入 x = 1
+= 加算して代入 x += 1(x = x + 1と同じ)
-= 減算して代入 x -= 1(x = x - 1と同じ)
*= 乗算して代入 x *= 2(x = x * 2と同じ)
/= 除算して代入 x /= 2(x = x / 2と同じ)
%= 剰余して代入 x %= 2(x = x % 2と同じ)

三項演算子
condition ? value1 : value2
条件式がtrueであればvalue1を、falseであればvalue2を返す。

以上が代表的な演算子です。
演算子の組み合わせによって、様々な処理を行うことができます。

...
代表的なものをあげてくれましたが、いくつか例が分かりにくいものもありますねー...
とりあえず一つずつ見ていきたいと思います。

代数演算子

chatGPTは「代数演算子」という言葉を選びましたが、「算術演算子」の方がメジャーな気がします。
(調べたら「代数演算子」でも間違いではないようですが、あまり聞いたことなかった...)

算術演算子は算数と同じなので(記号が違うものもありますが)イメージしやすいかと思います。
「加算」は足し算
「減算」は引き算
「乗算」は掛け算
「除算」は割り算
「剰余」は割り算した「余り」ですね。

そして、chatGPT先生があげたもの以外に
以下のようなものがあります。

演算子 説明
++ 1加算する let x = 5; x++; console.log(x); // 6
-- 1減算する let x = 5; x--; console.log(x); // 4
** べき乗する 2 ** 3 // 8

コーディング始めるまでは使い所がイメージできないかもですが
++(インクリメント)や--(ディクリメント)は初歩の練習問題とかでもよく出てくるので、すぐに馴染めると思います。
(私はまだ馴染めてません)

比較演算子

こちらも条件式でよくお世話になる演算子です。
これはもう、使いながら覚えるしかないですね。
が否定を表しているので(詳しくは論理演算子で出てきます)
それさえ分かればいける、かな。
あ、あとは「厳密に」の意味...これ、ややこしいのですよね...
詳しくはMDNの解説を読んでみてください...><
難しいけど、めっちゃ大事!

論理演算子

これはそのまま。
&&はAND。算数でいうと、「〇〇かつ××」
||はOR。算数でいうと、「〇〇または××」
!はNOT。「〇〇ではない」
こちらも条件式でよく使いますね。
「〇〇かつ××の時は、trueを返す」みたいな感じです。

代入演算子

こちらの説明はめっちゃ簡単にされててアレなんですが、
初心者的に分かりずらいやつですよね。

代入演算子(=)って算数的な感覚が抜けないと
x = 1は「xは1である」って見えちゃうんですけど
JavaScript的には(他のプログラム言語でもそうだと思いますが)
「xに1を代入する」が正しい表現です。
計算式の解答を出したいのではなく、
変数に値を入れたい訳で
やってることが全く違うので注意です。

なので、+=についても
x += 1x = x + 1と同じと書かれていますが
読み方としては
変数xの中に、変数xに1を足したものを代入する」
となります。
あとは書き方を省略するかどうか、というだけですね。
ややこしくって、本当に嫌になりますが
慣れるまでコード書いてみるしかないです。
頑張ります。

三項演算子

これは、if文を1行で書けるようにしました、というやつですね。
まだif文が出てくる前にこの話は難しいかもですが、
構造としては以下の通りです。

JavaScript
条件式 ? trueの場合の処理 : falseの場合の処理

if文でこれを書くとこう

JavaScript
if(条件式){
    trueの場合の処理
}else{
    falseの場合の処理
}

意味は全く同じですが、
if文では数行かかるところを、1行で書けるので便利だよね、ということです。

ただし、三項演算子で書くのは簡単な処理の場合だけにした方が良いです。
if文で書いてある方が読みやすくなるのであれば、無理に三項演算子を使う必要はありません。
...と最近読んだ「リーダブルコード」という本に書いてありました。

リンク

全てのカリキュラムへのリンクは導入編に置いております

導入編

JavaScriptとは何か、基本的な文法

データ型

変数

演算子 ⇦NOW!!

制御構文

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0