beautifier/js-beautify

Option unescape_strings can produce invalid string literals making JS invalid/uninterpretable

Open

#2141 opened on Mar 17, 2023

View on GitHub
 (9 comments) (0 reactions) (0 assignees)JavaScript (8,342 stars) (1,460 forks)batch import
good first issuelanguage: javascripttype: bug

Description

Description

Option unescape_strings can produce invalid string literals making JS invalid/uninterpretable

Input

The code looked like this before beautification:

        function () {
          i.exports = "\t\n\x0B\f\r   ᠎              \u2028\u2029\ufeff"
        }()

Expected Output

The code should have looked like this after beautification: code that does not contain invalid string literals

Actual Output

The code actually looked like this after beautification:

        function () {
          i.exports = "\t\n\x0B\f\r   ᠎              

"
        }()

Steps to Reproduce

Environment

OS: Firefox/Win10

Settings

{
        "unescape_strings": true,
}

Contributor guide