/bonvhp/webapp2/JavaScript       [後へ]   [目次へ]   [次へ] ~ [] ~

JavaScript:書式・変数・演算子

書式

JavaScript の基本的な使い方を説明します。

JavaScript は、宣言なく変数を使用できます。

いきなり a=0; とかできます。
この場合、a という変数に、0 を代入する、です。
# 一行は、セミコロン(;) で終わります。

var a=0;
と書く事もできて、
この時 a は宣言したブロック内のみ有効な、
ローカル変数になります。

a=0; とした時は、a はグローバル変数になります。

// の後、行末まではコメントです。
/* と */ で囲まれた部分もコメントです。

JavaScript 標準規格 ES2015 (ES6) から、「let」と「const」が追加されました。 ・let は、同じ変数を再度宣言できません。変数名が被ってしまうのが防げます。 ・const は、再度宣言も再代入もできません。定数に使用します。 例えば、 var a1 = 1; a1 = 2 // 再代入 OK var a1 = 3; // 再宣言 OK let a2 = 1; a2 = 2 // 再代入 OK let a2 = 3; // 再宣言 エラー const a2 = 1; a2 = 2 // 再代入 エラー const a2 = 3; // 再宣言 エラー 最近のブラウザは ES6対応なので、var ではなく、 let や const を使うようにしましょう。 なお、 ここでは「スコープ」については触れていません。 気になる方は、別途お調べください。

変数

変数に型宣言はありませんが、「型」自体は存在します。

数値 (Number)

num = 123; // 10進数の 123 num = 1.23; // 10進数の 1.23 num = 012; // 8進数。10進数で 10 num = 0x12; // 16進数。10進数で 18

文字列 (String)

ダブルクォーテーション (") か シングルクォーテーション (') で囲みます。 str = "123"; str = '123'; "" で囲んだ文字列の中に、" の文字そのものを書きたい場合は、 \" とします。 ' の場合も同様です。 str = "123\"45"; str = '123\'45'; \ で始まるものを「エスケープ文字」といいます。 "\n" // 改行 "\t" // タブ

真偽値 (Boolean)

flag = true; // 真 flag = false; // 偽

配列 (Array)

配列は、Array() で作成します。 a = new Array(3); // a[0], a[1], a[2] を作成 a = new Array(1,2,3); // a[0]=1, a[1]=2, a[2]=3 を作成 途中で要素を増やすこともできます。 例えば、 arr = new Array(3); で a[0], a[1], a[2] を作成した後、 a[3]=4; のように、宣言なく次の要素を使えます。 # new Array 無く、いきなり a[0] とかは使えません。

変数関連の操作

数値を文字列に変換

a = 12; str = a.toString(); // str に "12" が入る

文字列を数値に変換

str = "12"; a = parseInt(str); // a に 12 が入る # 文字列を1文字目から調べて、 # 数字以外の文字が現れるまでを変換の対象にします。

文字列の連結

str1 = "aa"; str2 = "bb"; str = str1 + str2; // str に "aabb" が入る

文字列長

str = "abcde"; len = str.length; // len に 5 が入る

演算子

C 言語と同様な演算子が使用できます。
# もっと種類が多いですが、詳細は参考WEB で。

比較では注意が必要です。

演算子 == や != は、
型変換を行った後で比較を行います。

例えば、
数値の 0、null、空文字("") などは false と見なされます。

また、
数値と文字列を比較する場合は、
ブラウザによって結果が異なる場合があるので、
予め parseInt などを使って型変換を行ってから比較します。

0 と false を「違うもの」と識別したい場合は、
型も比較対象にする演算子 === や !== を使います。

演算子の優先順位は、参考WEB ココ で確認しておいてください。
/bonvhp/webapp2/JavaScript       [後へ]   [目次へ]   [次へ]