/**
* データをXSSサニタイズする
*
* Objectや配列型にも対応している。
* @param multi サニタイズ前のデータ
* @return サイニタイズ後のデータ
*
*/
function xssSanitaizeAll(data){
if(typeof data == 'object'){
for(k in data){
data[k] = xssSanitaizeAll(data[k]);
}
}
else if (typeof data == 'string'){
if(data.indexOf('<') != -1){
data = data.replace(/</g, '<'). replace(/>/g,'>');
}
}
return data;
}
var data={'kani':"<input value='xxx' />",'neko':'ねこ','musi':{'bata':'バッタ','kanabun':"x<input type='button'>x"}};
data = xssSanitaizeAll(data);
console.log(data);
出力
サニタイズ前