JavaScript
ちょっと離れると忘れちゃうんでmemo
- CAAT(高性能JavaScriptアニメーションフレームワーク) - http://caat.ludei.com/
 - イベントハンドラ(javascript)
 
コメントの書き方
// // 以降がコメント /* 複数行にまたがった コメント */
変数の宣言
 // 変数の宣言
 var message = "Hello World, Again!"; // 文字列
 var d1 = -5.5;                       // 数値
 var d2 = false;                      // 真偽
 var d3 = undefined;                  // 定義されていない
 var d4 = null;                       // 何もない
                                      // 配列、オブジェクト
 // アラート表示
 alert(message);
 // 単項演算子 ++ --
 var x = 0;
 var y = x++;
 alert(y);
真・偽
 // true / false 真偽
 if (x == 5) { // }
 // 文字列 : 空文字だとfalse
 // 数値 : 0かNaNだとfalse
 // undefined = false
 // null = false
 // true/false = そのまま
 // object/配列 = true
論理演算子
 // 論理演算子 AND(&&) OR(||) NOT(!)
 if ((x > 2) && (x < 5)) {
     // x が2より小さい "か" 5より小さい ならなんらかの処理
 }
 if ((x > 2) || !(x < 5)) {
     // x が2より小さい "または" 5より小さくない ならなんらかの処理
 }
 if !(x < 5) {
     // x が 5より"小さくければ"なんらかの処理
 }
 // switch
 var x = 0;
 switch (x) {
   case 0:
   case 1:
          // 0 1 は同じ処理
          break;
   case 2:
          //
          break;
   default:
          //
          break;
 }
 // ループ(while)
 while (x < 10) {
    // なにかの処理。条件に合わなかったら実行されない
 }
        
 do {
    // なにかの処理。一度は実行される。
 } while (x < 10);
三項演算子
 // if 文の省略記法
 // 三項演算子
 // (条件) ? (真だった場合の値) : (偽だった場合の値)
 if( a>b )
   a=b;
 else
   a=c;
 // 上のif文の省略記法。
 (a>b)? a=b : a=c ;
 // 例
 var sex = '';
 if (sex == '男性') {
     price = 5000;
 } else {
     price = 3000;
 }
 // 三項演算子にすると
 price = (sex == '男性') ? 5000 : 3000;
 // 三項演算子は式なので
 var arr = ["○","×"];
 var exist = true;
 document.write( arr[exist?0:1] );
タイムアウト
 // setTimeout: 前回の処理が終わったかどうかを考慮する
 // setInterval: 考慮しない
 //setInterval(function() {
     // 1秒以上の処理 → クラッシュ
 //}, 1000);
 var i = 0;
 /*
    setInterval(function() {
      console.log(++i);
    }, 1000);
 */
 function plusOne() {
    console.log(++i);
    setTimeout(plusOne, 1000);
 }
 plusOne();
型も値の比較
// 厳密な比較演算子 === !== var a = 5; var b = "5"; console.log(a !== b);
即時関数・無名関数
 // 即時関数、無名関数
 (function() {
    console.log("hello world");
 })();
乱数
// 乱数 // Math.random() // 0からnまでの整数値 // var x = Math.floor(Math.random() * (n+1)); // 1から6まで var y = Math.floor(Math.random() * 6) + 1;