開発環境
- OS X Lion - Apple(OS)
- Safari (Webプラウザ)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- Script言語:JavaScript
- JavaScript Library: jQuery
『初めてのJavaScript 第2版』(シェリー・パワーズ著(Shelley Powers著)、武舎 広幸+武舎 るみ訳、オライリー・ジャパン、2009年、ISBN978-4-84312-225-5) の13章(JavaScriptのカスタムオブジェクトと例外処理)練習問第13-5を解いてみる。
その他参考書籍
- JavaScript 第6版
- JavaScriptリファレンス 第6版
- 『jQueryクックブック』(jQuery Community Experts 著、株式会社クイープ 訳、オライリー・ジャパン、2010年、ISBN978-4-87312-269-1)
13-5.
コード(TextWrangler)
<script> var Obj = function(){ var background = "#fff"; var state = "on"; this.change_state = function(){ if(state === "on"){ state = "off"; background = "#000"; } else { state = "on"; background = "#fff"; } }; this.get_color = function(){ return background; }; this.get_state = function(){ return state; }; }; var obj = new Obj(); function clicked(){ obj.change_state(); $('#d1').attr('style', "background-color:" + obj.get_color()); $('#d0').text("状態:" + obj.get_state() + " 背景色: " + obj.get_color()); } </script> <input type="button" value="背景色を変更" onclick="clicked()" /> <br /> <div id="d0" style="background-color:white !important;"> </div>
ちなみにPython3kの場合。
コード(TextWrangler)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 -*- class o: def __init__(self): self._background = "白" self._state = "off" def get_color(self): return self._background def get_state(self): return self._state def change_state(self): if self._state == "on": self._state = "off" self._background = "黒" else: self._state = "on" self._background = "白" o = o() for x in range(5): o.change_state() print("状態:{0:3} 背景色:{1}".format(o.get_state(), o.get_color()))
入出力結果(Terminal)
$ ./sample.py 状態:on 背景色:白 状態:off 背景色:黒 状態:on 背景色:白 状態:off 背景色:黒 状態:on 背景色:白 $
0 コメント:
コメントを投稿