Tach!
Kontext-Wechsel. Du erzeugst JS-Code, der muss sich an die Regeln halten, die für JS-Code gelten. Das heisst halt auch, dass du keine unescapedten Linebreaks erzeugen darfst.
Jedenfalls nicht in Strings, die mit ""
oder ''
eingefasst sind. Mit `` Backticks umrahmte Template Literals hingegen können auch Zeilenumbrüche enthalten, sind aber verhältnismäßig neu und nicht in allen alten Browsern verfügbar.
Wenn ich dir übrigens einen Tip geben darf: nutze lieber JSON.
Ja, spart auch das Auseinanderfummeln und Beachten von Sonderregeln, um das/die sich der Parser kümmert.
dedlfix.