開発環境
- OS X Lion - Apple(OS)
- Safari (Webプラウザ)
- BBEdit - Bare Bones Software, Inc.(Text Editor)
- Script言語:JavaScript
- JavaScript Library: jQuery
『初めてのJavaScript 第2版』(シェリー・パワーズ著(Shelley Powers著)、武舎 広幸+武舎 るみ訳、オライリー・ジャパン、2009年、ISBN978-4-87311-425-5) の13章(カスタムオブジェクトと例外の処理)練習問第13-2を解いてみる。
その他参考書籍
13-2.
コード(BBEdit)
var MyObject = function () { var that = this; var a = 10; that.getA = function () { return a; }; that.setA = function (o) { a = o; }; return that; }; var o = MyObject(); var result = ""; // aには直接アクセスできない(undefinedになってる) result += o.a + "\n"; // 特権メソッドを利用して値を取得したり変更したりしてみる result += o.getA() + "\n"; o.setA( 20 ); result += o.getA() + "\n"; $('#pre0').text(result);
ちなみにPython3kの場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 # -*- coding: utf-8 -*- # PythonではJavaScriptの様な隠蔽はできない # 下線「_」を先頭に付けて意図だけ示す class MyClass: def __init__(self): self._a = 10 def getA(self): return self._a def setA(self, value): self._a = value c = MyClass(); print(c.getA()) c.setA(20) print(c.getA())
入出力結果(Terminal)
$ ./sample.py 10 20 $
0 コメント:
コメントを投稿