diff options
author | sevenwithawp <sevenwithawp@gmail.com> | 2022-07-09 21:28:02 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-09 14:28:02 -0400 |
commit | 213d831ae3403402d55d3d084b2434c3ba8da70f (patch) | |
tree | d693407f283d97ec2311621a1906bf08ec13226a /ext/console/02_console.js | |
parent | 132c761e87679aec52b9ed8324ee2a4b00705620 (diff) |
refactor(ext) Decrease of StringPrototypeReplace recurrent usage (#15058)
Co-authored-by: Bartek IwaĆczuk <biwanczuk@gmail.com>
Diffstat (limited to 'ext/console/02_console.js')
-rw-r--r-- | ext/console/02_console.js | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/ext/console/02_console.js b/ext/console/02_console.js index b98a4a1ba..0f7b1a8db 100644 --- a/ext/console/02_console.js +++ b/ext/console/02_console.js @@ -720,27 +720,20 @@ // Replace escape sequences that can modify output. function replaceEscapeSequences(string) { + const escapeMap = { + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + "\t": "\\t", + "\v": "\\v", + }; + return StringPrototypeReplace( StringPrototypeReplace( - StringPrototypeReplace( - StringPrototypeReplace( - StringPrototypeReplace( - StringPrototypeReplace( - StringPrototypeReplace(string, /[\b]/g, "\\b"), - /\f/g, - "\\f", - ), - /\n/g, - "\\n", - ), - /\r/g, - "\\r", - ), - /\t/g, - "\\t", - ), - /\v/g, - "\\v", + string, + /([\b\f\n\r\t\v])/g, + (c) => escapeMap[c], ), // deno-lint-ignore no-control-regex /[\x00-\x1f\x7f-\x9f]/g, |