フロントエンドエンジニア芸人もりたけんじのJavaScript【JavaScript】JavaScript中級者の為の練習問題集261問(脱初心者へ)2016/09/10更新

【JavaScript】コンストラクタを作成するモジュール

【JavaScript】コンストラクタを作成するモジュール

//namespace関数の実装
var MYMO = {};
MYMO.namespace = function(s){
 var parent = MYMO;
 var parts = s.split('.');
 if(parts[0] === "MYMO"){
   parts = parts.slice(0);
 }
 for (var i = 0; i < parts.length; i++){
   if(typeof parent[parts[i]] === "undefined"){
     parent[parts[i]] = {}
   }
   parent = parent[parts[i]];
 }
 return parent;
}

//モジュール作成
MYMO.namespace('utilities.Array');
MYMO.utilities.Array = (function(app, global){
//@param : app,global
//グローバルオブジェクトへの参照とグローバル空間オブジェクトへの参照がローカルになる
                                  
//依存関係の取り込み
 var uobj = MYMO.utilities.object,
     ulang = MYMO.utilities.lang,
     Constr;
     //var の終わり
 //一回きりの初期化手続き
 //...
                                  
 //パブリックAPI--コンストラクタ
 Constr = function(o){
   this.elements = this.toArray(o);
 };
 Constr.prototype = {
   constructor: MYMO.utilities.Array,
   version: "2.9",
   toArray : function(obj){
     for (var i = 0, a = [], len = obj.length; i < len; i +=1){
     a[i] = obj[i];
   }
    return a;
   }
 }
 return Constr;
}(MYMO, this))
var arr = new MYMO.utilities.Array(obj)
arr
//Constr {elements: Array[0]}
arr.toArray(["a"])
//["a"]

参照 JavaScriptパターン Oreilly

(Visited 1 times, 1 visits today)