PowerPoint プレゼンテーション

JavaScript
プログラミング入門
2-3 式と演算子
2006/10/12
神津 健太
2-3-1 式の概要
式 : 値と演算子の組み合わせ
・「10」と「1」を足して変数sumに入れる
sum = 10 + 1;
・変数myNameと文字列「is taro」をつなげた文字列を変数newStrに入れる
newStr = myName + “is taro.”;
・以下のような記述も可能
b = (a=3) * 2;
2-3-1 式の概要
二項演算子:2つの値に対して演算を行う
i+1
変数iに1を足す
x/y
変数xを変数yで割る
単項演算子:1つの値に対して演算を行う
++i
変数iの値を1増やす
-b
変数bの符号を反転
!ok
変数okの真理値を反転
2-3-2 さまざまな演算子
算術演算子
二項演算子
: 「+」 「-」 「*」 「/」 「%」
単項演算子
: 「-」 「++」 「--」
等価比較演算子 : 「==」 「!=」
比較演算子
:
論理演算子
: 「!」 「&&」 「||」
ビット演算子
:
「&」 「|」 「^」
シフト演算子
:
「<<」 「>>」 「>>>」
「<」 「>」 「<=」 「>=」
(演算子の優先順位は(1版)P.53)
2-3-2 さまざまな演算子
ビット演算子
:
「&」
論理積(and)
「|」
論理和(or)
「^」
排他的論理和(xor)
10進数
2進数
9
9
1001
14
14
1110
9 & 14
8
1000
9 | 14
15
1111
9 ^ 14
7
0111
2-3-2 さまざまな演算子
シフト演算子
:
「<<」
左シフト
「>>」
右算術シフト
「>>>」 右論理シフト
「<<」の例
10<<1;
10を左は1ビットシフト、空になったビットには0が入る
10
| 00001010 |
<<1 | 00010100 | = 20
JavaScriptの場合、整数は32ビット。ここでは便宜上8ビット。
2-3-2 さまざまな演算子
「>>」の例
-10>>1;
最上位ビットが保存されるようにシフト
-10
| 11110110 |
>>1
| 11111011 |
= -5
「>>>」の例
-10>>>1;
符号ビットは保存されずにそのままシフト
-10
| 11111111 11111111 111111111 11110110 |
>>1
| 01111111 11111111 111111111 11111011 | = 2147483643
2-3-4 値の型を調べるtypeof演算子
typeof : 変数にどんな型の値が入れられているか調べる
var today = new Date();
var month = today.getMonth();
var myNum = 15;
var myName = “WildDg”;
typeof today
→
object
typeof Date
→
function
typeof myNum
→
number
typeof myName
→
string
typeof ng
→
undefined
宿題
ビット演算子、シフト演算子の電卓を作りなさい