var wrapped_string = "shouldn't this\
work?"
JSLintは不正なエスケープメント エラーを返します。
では、JavaScript でヒアドキュメントを行うにはどうすればよいでしょうか。長い HTML 文字列があります。
これがエラーとして扱われる理由は、この構文拡張が最近ECMAScript 5th Edition Specificationで標準化されたためだと思います。
は広くサポートされていますが、ECMAScript 3 の実装 (最も広く利用可能な実装です) では、それが機能するという保証はなく、初期のSyntaxError
例外が発生するだけです。
一部の人々がそれを避けると主張するもう 1 つの理由は、 ECMAScript 5 の実装であっても、ではない他の文字がある場合、 があるということLineTerminator
です。SyntaxError
たとえば、バックスラッシュの後にスペースがあると、コードでエラーが発生し、コードを読んだだけでは簡単に見つけることができません。
// works:
var str = "foo\
bar";
// an space after it, SyntaxError:
var str = "foo\
bar";
JSLint はあなたの気持ちを傷つけます。jQuery で実行してみてください。
大量の弦を使用する場合、脱進機は問題ありません。大量の を使用するよりもクリーンだと思います+
。
jslint.yml を介して ECMA5 構文を有効にすることができます。これはすべて改行をエスケープします。
es5: true # ECMAScript 5 構文を許可する場合は true