This repository has been archived on 2022-03-12. You can view files and clone it, but cannot push or open issues or pull requests.

42 lines
740 B
JavaScript
Raw Permalink Normal View History

2021-04-02 02:24:13 +03:00
'use strict';
const internals = {};
module.exports = function (input) {
if (!input) {
return '';
}
const lessThan = 0x3C;
const greaterThan = 0x3E;
const andSymbol = 0x26;
const lineSeperator = 0x2028;
// replace method
let charCode;
return input.replace(/[<>&\u2028\u2029]/g, (match) => {
charCode = match.charCodeAt(0);
if (charCode === lessThan) {
return '\\u003c';
}
if (charCode === greaterThan) {
return '\\u003e';
}
if (charCode === andSymbol) {
return '\\u0026';
}
if (charCode === lineSeperator) {
return '\\u2028';
}
return '\\u2029';
});
};