1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| module.exports = function (string) {
| return ('' + string).replace(/["'\\\n\r\u2028\u2029]/g, function (character) {
| // Escape all characters not included in SingleStringCharacters and
| // DoubleStringCharacters on
| // http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4
| switch (character) {
| case '"':
| case "'":
| case '\\':
| return '\\' + character
| // Four possible LineTerminator characters need to be escaped:
| case '\n':
| return '\\n'
| case '\r':
| return '\\r'
| case '\u2028':
| return '\\u2028'
| case '\u2029':
| return '\\u2029'
| }
| })
| }
|
|