2009年09月12日

JScriptのファイルを分割

JScriptファイルをライブラリ部分と分割したくなる事がある
いろいろあるようだが、とりあえずはこれで事足りるかな

test_main.js
eval( GetAllTextFile("test_lib.js") );

main();
//---------------------------------------------------
function main()
{
  func1(TEST1);
}

//---------------------------------------------------
function GetAllTextFile( js_path )
{
  var obj_fs = WScript.CreateObject("Scripting.FileSystemObject");
  try {
    var fs_txt = obj_fs.OpenTextFile( js_path, 1);
    try {
      return fs_txt.ReadAll();
    }
    finally {
      fs_txt.Close();
    }
  }
  finally {
    delete obj_fs;
  }
}
test_lib.js
var TEST1 = "hoge";

function func1( val )
{
  WScript.Echo( val );
}
eval()はタダ貼りつくだけのようなので、 #includeで使うような二重インクルード防止等は無理
eval()の順番も大事
GetAllTextFile()はファイルの取得処理なので、ライブラリへは押し込めない
また、GetAllTextFile()内でeval()してしまうと、GetAllTextFile()のスコープになるためダメ

少々不自由だけれど、スクリプトなので、これくらいで妥協


ラベル:JScript WSH js
posted by sanahi at 23:00| 滋賀 ☁| Comment(0) | TrackBack(0) | JScript(WSH) | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。