JavaScriptでクラス化したタイマーサンプル

Posted: 2013年12月25日-Likes: 0-Comments: 0-Categories: JavaScript
You are here: ...
Home / ブログ / ブログ / JavaScript / JavaScriptでクラス化したタイマーサンプル

JavaScriptの「オブジェクトとは」というお題で利用したコード。
クラス定義からインスタンス生成してコンソールログにカウントダウン表示するというもの。

ゆくゆくはティザーサイトで利用できるようなカウントダウン(あと○日!)みたいなものにしていくつもりです。

/*
    カウントダウンタイマー コンストラクタ
*/
var timerCountDown = function(sec){
    this.sec = sec;
    this.timerId = null;
    console.log("timerCountDown: " + this.sec);
}

/*
    class   : カウントダウンタイマー
    method  : 秒を減らす
*/
timerCountDown.prototype.countTime = function(){
    this.sec--;
    console.log("countTime: " + this.sec);
    if(this.sec <= 0) this.completeTime();
}

/*
    class   : カウントダウンタイマー
    method  : タイマー開始
*/
timerCountDown.prototype.startTime = function(){
    console.log("startTime: " + this.sec);
    var self = this;
    this.timerId = setInterval(function(){self.countTime()}, 1000);
}

/*
    class   : カウントダウンタイマー
    method  : タイマー停止
*/
timerCountDown.prototype.stopTime = function(){
    console.log("stopTime: " + this.sec);
    clearInterval(this.timerId);
}

/*
    class   : カウントダウンタイマー
    method  : タイマー完了
*/
timerCountDown.prototype.completeTime = function(){
    console.log("completeTime: " + this.sec);
    clearInterval(this.timerId);
}

var cd = new timerCountDown(5);     //インスタンス生成
cd.startTime();                     //タイマースタート

Prev / Next Post