JavaScriptでのクロージャーのテスト

| | TrackBacks (0)

 WHATWGでHTML5仕様がLast Callになった。徐々にではあるが、Web Application が普及する環境が整いつつある。(どうもW3Cは聞いていなかったらしく、ちょっと揉めそうな感じみたいだが。)

 さて、以前もここで書いたとおりHTML5はそれまでの文書の構造化に加え、振る舞いの要素の追加が行われており、スクリプト言語のインターフェースも規定されている。このスクリプト言語は仕様の上では指定されているわけではないが、事実上JavaScriptだろう。ということでそろそろちゃんとJavaScriptを書けるようにならなきゃいかんのかなぁ。ということで、まずはクロージャーからやってみた。

<html lang="ja">
<head>
  <title>Closure Test</title>
  <meta http-equiv="Content-Type" content="text/plain;charset=UTF-8">
</head>

<body onload="onLoad()">
<script type="text/javascript">
var countUp;

function makefunc()
{
    var x=0;
    return function(){return x++;};
}

function onLoad()
{
    countUp = makefunc();
    window.setInterval(onTimer, 100);
}

function onTimer()
{
    document.getElementById('count').innerHTML = countUp();
}

</script>

<div id="count"></div>
</body>
</html>

 このコードは、100ms毎にカウントアップして表示するもの。makefuncがカウントアップする関数オブジェクトを作り、onloadハンドラでグローバル変数countupに保存しておく。それを100ms毎に呼び出している。実行すると下のようになる。

Categories

0 TrackBacks

Listed below are links to blogs that reference this entry: JavaScriptでのクロージャーのテスト.

TrackBack URL for this entry: http://www.argv.org/~chome/blog/mt-tb.cgi/89

About Me

中尾 圭佐(chomy)
千葉県船橋市在住のモノクロ写真に目覚めた研究者。
Twitter ID: jm6xxu
Skype: chomy

My Tweets

jm6xxu: @arashick5 FAAとCZDと新宿三丁目で呑んでました。今はCZD宅で呑み。

jm6xxu: 新宿なう。

jm6xxu: Debian勉強会終了。これから新宿へむかう。

jm6xxu: @naoler ども。ありがとうございます。やっていることは、radikoからの音声をiPhone用に再送信しているだけだったりします。

jm6xxu: RT @snakajima リンク修正 #cloudreaders iPad向けの無料クラウド本棚を作ります。ぜひともご協力を [予告:#iPad向けクラウド本棚付きeBook Readerを無料で配布します] http://tinymsg.appspot.com/V5f

About this Entry

This page contains a single entry by chomy published on October 29, 2009 12:01 AM.

時系列データファイルから必要な時間のデータを取り出すスクリプト was the previous entry in this blog.

アンプ購入 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Powered by Movable Type 4.261