このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
js:basic:operator [2020/10/22 10:32] tanaka |
js:basic:operator [2021/04/12 14:13] (現在) tanaka [その他の演算子] |
||
---|---|---|---|
行 3: | 行 3: | ||
--- // | --- // | ||
- | === 算術演算子 === | + | ===== 算術演算子 |
< | < | ||
行 22: | 行 22: | ||
x = (a++) * (2+a); // x=18, a=4 | x = (a++) * (2+a); // x=18, a=4 | ||
</ | </ | ||
+ | \\ | ||
- | === 代入演算子 === | + | ===== 代入演算子 |
< | < | ||
行 31: | 行 32: | ||
</ | </ | ||
- | **分割代入< | + | ==== 分割代入 |
+ | < | ||
- | 配列 | + | === 配列 |
<code javascript> | <code javascript> | ||
let data = [1, 2, 3, …]; | let data = [1, 2, 3, …]; | ||
行 39: | 行 41: | ||
</ | </ | ||
- | オブジェクト | + | === オブジェクト |
<code javascript> | <code javascript> | ||
let data = {id:1, name:' | let data = {id:1, name:' | ||
行 45: | 行 47: | ||
console.log(user_id, | console.log(user_id, | ||
</ | </ | ||
+ | \\ | ||
- | === 比較演算子 === | + | ===== 比較演算子 |
< | < | ||
行 53: | 行 56: | ||
?: → 条件演算子 | ?: → 条件演算子 | ||
</ | </ | ||
+ | \\ | ||
- | === 論理演算子 === | + | ===== 論理演算子 |
< | < | ||
行 62: | 行 66: | ||
falsyの値 ・・・ (空文字), | falsyの値 ・・・ (空文字), | ||
' | ' | ||
- | + | \\ | |
- | **ショートカット演算(短絡演算)** | + | ==== ショートカット演算(短絡演算)==== |
<code javascript> | <code javascript> | ||
行 70: | 行 74: | ||
msg = msg ?? ' | msg = msg ?? ' | ||
</ | </ | ||
+ | \\ | ||
- | === ビット演算子 === | + | ===== ビット演算子 |
< | < | ||
&, |, ^, ~, << | &, |, ^, ~, << | ||
</ | </ | ||
+ | \\ | ||
- | === その他の演算子 === | + | ===== その他の演算子 |
|演算子|説明| | |演算子|説明| | ||
行 85: | 行 91: | ||
|new|'' | |new|'' | ||
|typeof|データ型を返す(基本型:number, | |typeof|データ型を返す(基本型:number, | ||
+ | |void||'' | ||
- | === 優先順位 === | + | === deleteの例 === |
+ | <code javascript> | ||
+ | data1 = 1; | ||
+ | delete data1; | ||
+ | var data2 = 1; | ||
+ | delete data2; | ||
+ | </ | ||
+ | \\ | ||
+ | |||
+ | ===== 優先順位 ===== | ||
+ | |||
+ | ^優先順位^演算子^ | ||
+ | | 高 |カッコ類 [],()| | ||
+ | | |インクリメント/デクリメント、単項演算子| | ||
+ | | |算術 【高】*, /, % 【低】+, -| | ||
+ | | |シフト| | ||
+ | | |比較 【高】<, | ||
+ | | |ビット【高】< | ||
+ | | |論理 【高】&&, | ||
+ | | |条件| | ||
+ | | |代入| | ||
+ | | 低 |カンマ| | ||
+ | |||
+ | ===== 結合則 ===== | ||
+ | |||
+ | 優先順位が同じ時の演算の順序 | ||
+ | |||
+ | **左結合** ・・・ 左 → 右に演算する(算術、比較、論理、ビットなど) | ||
+ | |||
+ | 例 | ||
+ | <code javascript> | ||
+ | a + b - c | ||
+ | </ | ||
+ | |||
+ | - a + b | ||
+ | - 〔1.の結果〕+ c | ||
+ | |||
+ | **右結合** ・・・ 右 → 左に演算する(単項、代入、条件など) | ||
+ | |||
+ | 例 | ||
+ | <code javascript> | ||
+ | a = b = c; | ||
+ | </ | ||
+ | |||
+ | - b = c | ||
+ | - a = 〔1.の結果〕 | ||
+ | |||
+ | <code javascript> | ||
+ | !!!a; | ||
+ | </ | ||
- | === 結合則 === | + | - !a |
+ | - !〔1.の結果〕 | ||
+ | - !〔2.の結果〕 | ||