あなたの質問には正解。長い文字列をJavaScriptで書く方法はたくさんありますが、それは主にあなたが選んだ味の問題です。私はここで私の視点をテーマに記述することができます。
まず、maxlen
JSlintのオプションを使用して、デフォルトの行の長さを好きな値に変更することができます。たとえば、
/*jslint maxlen: 130 */
しかし、あなたはすでに設定を知っていると思います。
JavaScriptコードの一部を使用して、JavaScriptを生産的に使用することができます(Closure Compiler、Microsoft Ajax Minifierなど)。あなたは簡単the pageコード
// ==ClosureCompiler==
// @compilation_level SIMPLE_OPTIMIZATIONS
// @output_file_name default.js
// ==/ClosureCompiler==
// ADD YOUR CODE HERE
function hello(name) {
var test = '<div>' +
'<h1>Foo</h1>' +
'<p>Lorem ipsum</p>' +
'</div>';
return test + name;
}
hello('New user');
上で確認することができますどのように
function hello(a){return"<div><h1>Foo</h1><p>Lorem ipsum</p></div>"+a}hello("New user");
と、すべての文字列定数が連結されますに縮小されます。したがって、長い文字列定数を使用してコードを書式設定すると、のコードをよりよく読み取ることができます。ミニ鑑定士が残りの作業を行います。
長いURLの場合、論理的な観点から見れば、どこでも長い文字列を壊すことができます(私はいつも'/'
文字になると思います)。ほとんどの実用的なケースでは、追加されるbaseURL
があります。つまり、あなたのファイルの先頭にどこか共通プロジェクト設定を定義したり、別のJavaScriptで
var baseLoremUrl = 'http://example.com/foo/bar/baz/fizz/buzz/lorem/';
を提出し、あなたがURLに付加されなければならないパラメータを持っている場合は
'<a href="' + baseLoremUrl + 'ipsum/etc/' + '">Click me!</a>'
として、後でそれを使用することができます
'http://example.com/foo/bar/baz/fizz/buzz/lorem?x=123&y=ABC'
ように私はいつも
baseLoremUrl + '?' + $.params({x: 123, y: 'ABC'})
使用します
コードを一方の側から読みやすくする必要がある場合は、encodeURIComponentに関してすべてのパラメータが正しくエンコードされるようにする必要があります。
上記のすべては、JavaScriptコードの作成中に自分自身に従うことを試みるルールです。
'しかし、私はそれがURLs'のために理にかなっているとは思わない、なぜそれがですか? –
@LightnessRacesinOrbit、文字列を複数の行に分割しても、読みやすく/安全なコードが100%作成されないためです。 – zzzzBov
何も100%何もしません。適切なシナリオには適切なツールを使用してください。 –