概要
JavaScriptはスクリプト言語、弱い型付け、コンパイル不要でブラウザ上で実行。Javaとは無関係。
構成要素:
| 構成要素 | 役割 |
|---|---|
| ECMA Script | JSコア文法の基礎 |
| BOM | ブラウザオブジェクトモデル、ブラウザ操作 |
| DOM | ドキュメントオブジェクトモデル、ページ要素操作 |
記述位置
- 埋め込み:
<script>alert("埋め込み")</script> - 外部リンク:
<script src="js/index.js"></script> - インライン:
<input type="button" value="ClickMe" onclick="alert('hello');">
データ型
number, string, boolean, object, undefined
var a = 1; var b = "hello"; var c = true;
typeof a; // 型を返す
演算子
算術: + - * / % ++ -- / 関係: > >= < <= != == === / 論理: && || ! / 三項: 条件 ? 式1 : 式2
制御構文
if (score >= 90) { alert("優秀"); }
else if (score >= 80) { alert("良好"); }
else { alert("不合格"); }
switch(parseInt(score/10)) { case 9: alert("優秀"); break; default: alert("不合格"); }
while(条件){ 本体; }
for(var i=0; i<10; i++){ 本体; }
関数
function 関数名(引数) { 本体; return 値; }
var fn = function(引数) { 本体; }; // 匿名関数
画像スライドショー
<img id="img" src="images/01.jpg">
<script>
var img = document.getElementById("img"), count = 1;
function change() { count++; img.src = "images/0"+count+".jpg"; if(count==8) count=0; }
setInterval(change, 2000);
</script>
JSイベント
要素.イベント = 処理
| イベント | 説明 |
|---|---|
| onload | ページ/画像読み込み完了 |
| onclick | マウスクリック |
| onsubmit | フォーム送信 |
| onblur/onfocus | フォーカス変更 |
| onkeydown/up | キー押下/解放 |
| onmouseover/out | マウス進入/退出 |
| onchange | 内容変更 |