2009/08/16

ASP:: JScriptでのクラス

相変わらずクラシックASPでJScriptを使用しておりますが、カスタムクラスの生成・継承でつまずいていたので、ちょいと調べてみました。

「これよ、これ!俺の知りたいのは!」という記事をいくつかメモしておきます。

★JScript クラス生成
http://support.microsoft.com/kb/288965/ja
http://www5a.biglobe.ne.jp/~javajava/ari/00jscript/js03.html
http://maglog.jp/pueblo-del-script/index.php?module=Article&action=ReaderDetail&article_id=17491

★JScript クラス継承 
http://maglog.jp/pueblo-del-script/index.php?module=Article&action=ReaderDetail&article_id=22470

(例)
<%
function sanitize(){
this.index = new Array("'", "\\", "|", "%", "=", "or", "and", "OR", "AND", '--', '<', '>', '~', ' ');
this.convIndex = new Array("’", "¥", "|", "%", "=", "or", "and", "OR", "AND", '--', '<', '>', '~', ' ');
this.chk = function(argC){
len = this.index.length;
convString = argC;
for(var i=0; i<len; i++){
while(convString.indexOf(this.index[i]) != -1){
convString = convString.replace(this.index[i], this.convIndex[i]);
}
}
return convString;
}
}

var sanitize= new sanitize(); //インスタンス生成
var sani2 = sanitize; //sanitizeクラスを継承

sani2.index.push("AIUEO"); //変換前のインデックスを拡張
sani2.convIndex.push("AIUEO"); //変換後のインデックスを拡張

Response.Write(sani2.chk("あいうえお AIUEO '--'"));
%>

単純なデータの集合体としてクラスを使うのはどうかと思いますが、やはり継承・オーバーライドができることを考えるとクラスの使用は必須ですね。
スポンサーリンク

スポンサーリンク