開発環境
- OS X Lion - Apple(OS)
- Safari (Webプラウザ)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- Script言語:JavaScript
- JavaScript Library: jQuery
独習JavaScript 高橋 和也 (著), 竹添 直樹 (著), 里見 知宏 (著) の第7章(オブジェクト指向プログラミング)7.6(スコープと名前空間)理解度チェック4を解いてみる。
その他参考書籍
- JavaScript 第5版 David Flanagan (著), 村上 列 (翻訳)
- JavaScriptクイックリファレンス David Flanagan (著), 木下 哲也 (翻訳), 福龍興業 (翻訳)
4.
コード(TextWrangler)
var jp; if(!jp){ jp = {}; } if(!jp.learnyourself){ jp.learnyourself = {}; } jp.learnyourself.AbstractStringSplitter = function(str,splitter){ if(!str){ throw new Error("文字列が指定されていません。"); } this.str = str; this.splitter = splitter; this.array = this.getArray(); this.i = -1; } jp.learnyourself.AbstractStringSplitter.prototype.getArray = function(){ return this.str.split(this.splitter); }; jp.learnyourself.AbstractStringSplitter.prototype.getNext = function(){ this.i += 1; if(this.i == this.array.length){ this.i = 0; return this.array[this.i]; } return this.array[this.i]; }; jp.learnyourself.CommaStringSplitter = function(str){ jp.learnyourself.AbstractStringSplitter.apply(this,[str,","]); }; jp.learnyourself.CommaStringSplitter.prototype = new jp.learnyourself.AbstractStringSplitter("tmp",""); delete jp.learnyourself.CommaStringSplitter.prototype.str; delete jp.learnyourself.CommaStringSplitter.prototype.splitter; delete jp.learnyourself.CommaStringSplitter.prototype.array; delete jp.learnyourself.CommaStringSplitter.prototype.i; jp.learnyourself.CommaStringSplitter.prototype.constructor = jp.learnyourself.CommaStringSplitter; jp.learnyourself.SlashStringSplitter = function(str){ jp.learnyourself.AbstractStringSplitter.apply(this,[str,"/"]); }; jp.learnyourself.SlashStringSplitter.prototype = new jp.learnyourself.AbstractStringSplitter("tmp",""); delete jp.learnyourself.SlashStringSplitter.prototype.str; delete jp.learnyourself.SlashStringSplitter.prototype.splitter; delete jp.learnyourself.SlashStringSplitter.prototype.array; delete jp.learnyourself.SlashStringSplitter.prototype.i; jp.learnyourself.SlashStringSplitter.prototype.constructor = jp.learnyourself.SlashStringSplitter; var str = $('#t0').val(); var css = new jp.learnyourself.CommaStringSplitter(str); var sss = new jp.learnyourself.SlashStringSplitter(str); var splitters = [css,sss]; var result = ""; for(var i = 0 ; i < splitters.length ; i++){ var array = splitters[i].getArray(); for(var j = 0 ; j < array.length ; j++){ result += j + ": " + array[j] + "<br >"; } for(var k = 0 ; k < array.length * 2 ; k++ ){ result += splitters[i].getNext() + "<br />"; } } $('#pre0').html(result);
5.
外部ファイルに保存してHTMLから利用できるようにするには、
<script src="パス/外部ファイル名.js"><script&gr;
とHTMLに記述すればいい。
0 コメント:
コメントを投稿