‘liusuyi’
2023-08-09 161b9318e345c8a0c9cdc133b33a1c759495f323
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
'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';
    });
};