JSFiddle - React, Tailwind, and code Playground
by kazu69
JavaScript
//クラス生成
var Class = function(){
//private propaty/method
//propaty
var _propaty = '_propaty';
//constractor(mathod)
//コンストラクタとは、オブジェクトを生成する際に自動的に呼び出される関数(メソッド)のこと
//プライベートメソッドなどはコンストラクタ内で定義する
var _constroctor = function(val){ return val; }
//特権メソッド
//プライベートメンバーにアクセスする
this.getPropaty = function() {return _propaty;}
this.setPropaty = function(val) {_propaty = val;}
this.checkPropaty = function(){return (_propaty)? true : false;}
this.getConstroctor = function(val) {return _constroctor(val);}
}
//普通のメソッドを定義
Class.prototype = {
publicVar : function() {return 2;},
publicGetProp : function() { return this.getPropaty(); },
publicSetProp : function(val) { this.setPropaty(val); },
publicCheckProp : function() { return this.checkPropaty(); }
}
var PseudoConstructor = function(){
}
var PseudoConstructor = function() {
var instance = new Class();
return {
show: function () {return instance.publicVar();},
get : function() {return instance.publicGetProp();},
set : function(val) {instance.publicSetProp(val);}
}
}
var instance = new PseudoConstructor();
console.log(instance.get());
instance.set(2);
console.log(instance.get());