jsでのサニタイズ関数
/**
* @namespace
*/
var sanitize = sanitaize || {};
/**
* HTML, JavaScipt で特別な意味を持つ文字列を無害な文字列へ変換します。
* @public
* @param {string} str 変換元の文字列
* @return {string} 無害化された文字列
*/
sanitaize.encode = function (str) {
return str.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
};
/**
* エスケープされた文字から元の文字列を復元します。
* @public
* @param {string} str 無害化された文字列
* @return {string} 無害化前の元文字列
*/
sanitaize.decode = function (str) {
return str.replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, '\'').replace(/&/g, '&');
};
// ----------------------------------------------- //
sanitaize = {
encode : function (str) {
return str.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
},
decode : function (str) {
return str.replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, '\'').replace(/&/g, '&');
}
};