ここは、ふぇりあ16歳が不定期に連載しているオンライン小説のページです。
VNIふぇりあ16歳へ
ゼロからわかる現代JavaScript
56.パターン「データークラス」
オブジェクト指向はいろいろな使い方をする事ができます。
前回の構造体風クラスに、プロパティ、メソッドを追加したもの。
今回使用するソースコード |
//必要な分だけ生徒のオブジェクトを作る var student1 = new student(); //情報を入力 プロパティに変更 student1.setName("御坂美琴"); student1.setSlill("エレクトロマスター"); student1.setLevel("LEVEL5"); student1.setHobby("ゲコ太集め"); student1.setSchool("常盤台中学校"); var student2 = new student(); //情報を入力 プロパティに変更 student2.setName("白井黒子"); student2.setSlill("テレポーター"); student2.setLevel("LEVEL5"); student2.setHobby("?"); student2.setSchool("常盤台中学校"); document.write("生徒のデーター表示<hr>"); //デーを表示 クラスメソッドに変更 student1.showdata(student1); student1.showdata(student2); //構造体のようなクラス function student() { var obj = this; //クラス変数 obj.name = null; obj.skill = null; obj.level = null; obj.hobby = null; obj.school = null; //get/setプロパティ obj.getName = function () { return obj.name; } obj.setName = function (x) { obj.name = x; } //get/setプロパティ obj.getSkill = function () { return obj.skill; } obj.setSlill = function (x) { obj.skill = x; } //get/setプロパティ obj.getLevel = function () { return obj.level; } obj.setLevel = function (x) { obj.level = x; } //get/setプロパティ obj.getHobby = function () { return obj.hobby; } obj.setHobby = function (x) { obj.hobby = x; } //get/setプロパティ obj.getSchool = function () { return obj.school; } obj.setSchool = function (x) { obj.school = x; } //データー表示用メソッド obj.showdata = function (x) { document.write(x.name + ":" + x.skill + x.level + "/趣味:" + x.hobby + "所属:" + x.school + "<br>"); } } |
長いですが、使いかっては良くなりました。
通常はデータークラスはこのように使うのが一般的です。
実行結果
コラム:
白井黒子には趣味らしい趣味が見当たらないのは
お話の杓の長さの問題なのでしょうか。
(C)著作権はふぇりあ16歳とお兄ちゃんにあります。
無断転載、盗用は禁止です。