Your SlideShare is downloading. ×
前期講座09
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

前期講座09

314
views

Published on

Published in: Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
314
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. JavaScript 基礎Ⅱ
  • 2.  制御構文  for  for in  while  do while  switch case  関数  定義、呼び出し  無名関数  変数スコープ  課題
  • 3. for, while, switch case
  • 4.  繰り返し処理を実行する for (var i = 0; i < 5; i++) { console.log("ここは 5 回実行される"); }
  • 5.  配列を走査する var arr = ["a", "b", "c", "d", "e", "f"]; var i, length = arr.length; for (i = 0; i < length; i++) { console.log("arr[" + i + "]: " + arr[i]); }
  • 6.  オブジェクトを走査する  添字の自由度が高い Object は単純に走査できない var obj = { a: "apple", b: "blue", c: "cold" }; for (var key in obj) { console.log("obj[" + key + "]: " + obj[key]); }
  • 7.  for in はオブジェクトの全てのプロパティを走査する  ときには不要なメソッドまで走査するのでそのままでは使え ない Object.prototype.hoge = "hogehoge"; var obj = { a: "apple", b: "blue", c: "cold" }; for (var key in obj) { console.log("obj[" + key + "]: " + obj[key]); }
  • 8.  Object の hasOwnProperty メソッドを使ってオブジェクトに属して いるプロパティとメソッドだけを列挙する Object.prototype.hoge = "hogehoge"; var obj = { a: "apple", b: "blue", c: "cold" }; for (var key in obj) { if (obj.hasOwnProperty(key)) { console.log("obj[" + key + "]: " + obj[key]); } }
  • 9.  繰り返し処理を実行する var count = 6; while (count-- > 0) { console.log("カウントダウン: " + count); }
  • 10.  少なくとも 1 度実行する繰り返し処理 var count = 5; do { console.log("カウントダウン: " + count); } while (count-- > 0);
  • 11.  複数の条件で処理を分岐する var num = 3; switch (num % 2) { case 0: console.log("num は偶数"); break; case 1: console.log("num は奇数"); break; default: console.log("num は数値ではない"); break; }
  • 12. 一連の処理をまとめる
  • 13.  よく使う処理はまとめると分かりやすい // 配列を順番にブラウザのコンソールへ列挙する function showArray(arr) { var length = arr.length; for (var i = 0; i < length; i++) { console.log("[" + i + "]: " + arr[i]); } return length; }
  • 14.  宣言 (定義) した関数を使うときに呼び出す var summer = [ "海", "花火", "避暑", "プール", "夏休み" ]; showArray(summer);
  • 15.  引数: 関数へ渡す値  返り値: 関数を実行した結果 // 宣言 function showArray(arr) { ...(略) // 呼び出し var length = showArray(summer); 関数名 関数名 引数 引数返り値
  • 16.  名前の無い関数  関数リテラル var f = function (x, y) { return [x, y] }; var p = f(3, 2); 関数も値のように扱える!
  • 17.  変数にはその変数が有効である範囲がある  JavaScript では関数によってのみ、変数の有効範囲が決まる var value = 0; // 即時関数 (function () { var value = 1; console.log("inner: " + value); })(); console.log("outer: " + value);
  • 18.  変数スコープにはグローバルとローカルがある  ローカルスコープの変数は var を使って宣言する var value = 0; (function () { // var を取り払うと… value = 1; console.log("inner: " + value); })(); console.log("outer: " + value);
  • 19.  次のコードを読んで、コンソールを出力される値を考える var value = 0; (function () { var value = 2; (function () { value = 1; console.log("A: " + value); })(); console.log("B: " + value); })(); console.log("C: " + value);
  • 20.  アンケート  課題は後ほど…