JS转换HTML转义符,防止javascript注入攻击,亲测可用
Posted Lonely existence, lonely burni
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS转换HTML转义符,防止javascript注入攻击,亲测可用相关的知识,希望对你有一定的参考价值。
1
2
3
function
html2Escape(sHtml) {
return
sHtml.replace(/[<>&
"]/g,function(c){return {‘<‘:‘<‘,‘>‘:‘>‘,‘&‘:‘&‘,‘"
‘:
‘"‘
}[c];});
}
1
2
3
4
function
escape2Html(str) {
var
arrEntities={
‘lt‘
:
‘<‘
,
‘gt‘
:
‘>‘
,
‘nbsp‘
:
‘ ‘
,
‘amp‘
:
‘&‘
,
‘quot‘
:
‘"‘
};
return
str.replace(/&(lt|gt|nbsp|amp|quot);/ig,
function
(all,t){
return
arrEntities[t];});
}
// 转成空格
1
2
3
4
|
function nbsp2Space(str) { var arrEntities = { ‘nbsp‘ : ‘ ‘ }; return str.replace(/&(nbsp);/ig, function (all, t){ return arrEntities[t]}) } |
1
2
3
function
return2Br(str) {
return
str.replace(/\r?\n/g,
"<br />"
);
}
1
2
3
4
5
6
function
trimBr(str) {
str=str.replace(/((\s| )*\r?\n){
3
,}/g,
"\r\n\r\n"
);
//限制最多2次换行
str=str.replace(/^((\s| )*\r?\n)+/g,
‘‘
);
//清除开头换行
str=str.replace(/((\s| )*\r?\n)+$/g,
‘‘
);
//清除结尾换行
return
str;
}
1
2
3
4
function
mergeSpace(str) {
str=str.replace(/(\s| )+/g,
‘ ‘
);
return
str;
}