它实际上不必添加新行,只是可读的东西.
有什么比这更好的?
str = "line 1" +
"line 2" +
"line 3";
Run Code Online (Sandbox Code Playgroud) 如何在ES6中编写一个模板文字,其中包含反引号(`)及其自身(即嵌套反引号).
例如:
var query = `
UPDATE packet
SET
`association` = "3485435",
`tagname` = "associated"
`
Run Code Online (Sandbox Code Playgroud)
我需要它的原因:
在我上面的代码示例中很明显.
我正在尝试构建node-mysql查询Strings,并将它们存储在一个变量中,以便将它们传递给mySQL.mySQL查询语法要求返回UPDATE样式查询.
我可以让它们看起来整洁的唯一方法是使用模板文字,否则使用常规单行字符串的查询看起来很糟糕,因为在某些情况下它们最终会很长.
我也想避免使用终止行,\n因为它很麻烦.
$("#addSelect").click(function() {
$("#optionsForm").after("Hello world.");
} );
Run Code Online (Sandbox Code Playgroud)
这有效.
$("#addSelect").click(function() {
$("#optionsForm").after("<tr>
<td><input type="text" class="optionField" value="Options" /></td>
<td>
<ul class="option">
<li><select><option>Value..</option></select></li>
</ul>
</td>
</tr>");
} );
Run Code Online (Sandbox Code Playgroud)
这样的事情没有.
在Chrome中,我收到错误" Unexpected token ILLEGAL ".谷歌搜索后,我发现我的小脑对javascript和多行知之甚少.所以我在每一行的末尾添加了'\'.然而,我现在得到错误" 意外的标识符 ".
我想这不会像我做的那样困难:)
我正在构建一个带有几个模态对话窗口的小应用程序.窗口需要一点点HTML.我已经在javascript库中对窗口HTML进行了硬编码,但对此解决方案并不满意.有没有更优雅的方式来做到这一点?似乎JavaScript没有多行字符串/ heredoc语法.
var html = "<div id='email_window'><h2>Email Share</h2><div>";
html = html + "<form action='javascript:emailDone();' method='post'>";
html = html + "<div><label for='to'>To</label><input id='to' type='text'></div>";
html = html + "<div><label for='from'>From</label><input id='from' type='text' value='" + email + "'></div>";
html = html + "<div><label for='subject'>Subject</label><input id='subject' type='text' disabled='disabled' value='" + subject + "'></div>";
html = html + "<div><label for='body'>Body</label><input id='body' type='text' disabled='disabled' value='" + body + "'></div>";
html = html + "<div><input type='submit' value='Send'><input type='button' value='Cancel' onClick='javascript:$.fancybox.close();'></div>";
html = html + "</form></div>";
$("#data").html(html); …Run Code Online (Sandbox Code Playgroud) 有没有一种方便的方法来引用在JavaScript中同时包含单引号和双引号的大块HTML?
有什么像HERE-doc <<EOF,多引号字符"""或自定义分隔符q{}?
这个问题的任何创造性或创造性解决方案
问题是:
什么是将多行字符串存储到变量中的JavaScript方法,就像在PHP中一样?
可能重复:
<XMP>标记
我知道它当然已被弃用了,我知道如何通过使用<pre>标签,<code>标签和转义来解决它<>.
我的问题是,为什么要将其贬值?在<xmp>标签中使用真实代码的解决方案似乎比我们现在所做的所有这些逃避更加优雅,然而,一个被忽略而偏向于另一个.
任何的想法?是否有理由支持<pre>; 逃脱<xmp>?
我试图在我的javascript代码中格式化(美化,整理,清理......你的名字)一段HTML,或者换句话说,将它展开在多行而不是将它写在一行上,这样它就可以了很容易阅读
基本上,它是一段html代码,我试图通过调用jQuery的.append();方法附加到页面.
这就是我要做的事情:
$('.videos').append('<li>
<span>' + count + '</span> -
<a href="' + vList[i].player + '">
<span class="title">' + videoTitle + '</span>
</a>
</li>');
Run Code Online (Sandbox Code Playgroud)
显然,它不会那样工作.我正进入(状态Uncaught SyntaxError: Unexpected token >
当它写如下,一切正常.
$('.videos').append('<li><span>' + count + '</span> - <a href="' + vList[i].player + '"><span class="title">' + videoTitle + '</span></a></li>');
Run Code Online (Sandbox Code Playgroud)
有点奇怪的是,当我在这里尝试做的时候,
var albumURL = API + '/video.get?=owner_id=' + userID +
'&album_id=' + aList[i].album_id +
'&access_token=' + accessToken;
Run Code Online (Sandbox Code Playgroud)
我没有任何问题.
我知道这个问题并不是什么大问题,但我只是为了简单起见而试图解决这个问题.
有什么建议?
我想把下面的html代码放在我的javascript函数中.我不想把它们全部放在一起.代码是否可能与html中的代码相同?码:
<div data-role="page" data-add-back-btn="true" id="Gallery2" class="gallery-page">
<div data-role="header">
<h1>Second Gallery</h1>
</div>
<div data-role="content">
<ul class="gallery">
<li><a href="images/full/010.jpg" rel="external"><img src="images/thumb/010.jpg" alt="Image 010" /></a></li>
<li><a href="images/full/011.jpg" rel="external"><img src="images/thumb/011.jpg" alt="Image 011" /></a></li>
<li><a href="images/full/012.jpg" rel="external"><img src="images/thumb/012.jpg" alt="Image 012" /></a></li>
<li><a href="images/full/013.jpg" rel="external"><img src="images/thumb/013.jpg" alt="Image 013" /></a></li>
<li><a href="images/full/014.jpg" rel="external"><img src="images/thumb/014.jpg" alt="Image 014" /></a></li>
<li><a href="images/full/015.jpg" rel="external"><img src="images/thumb/015.jpg" alt="Image 015" /></a></li>
<li><a href="images/full/016.jpg" rel="external"><img src="images/thumb/016.jpg" alt="Image 016" /></a></li>
<li><a href="images/full/017.jpg" rel="external"><img src="images/thumb/017.jpg" alt="Image 017" /></a></li>
<li><a href="images/full/018.jpg" rel="external"><img src="images/thumb/018.jpg" alt="Image 018" /></a></li>
</ul>
</div> …Run Code Online (Sandbox Code Playgroud) 作为前言,是的,我知道JSLint更多的是一套指导而不是规则.
在使用JSLint清理我继承的一些代码时,有很多地方会在字符串中使用某些URL.它们对于脚本来说是必需的,但是比标准的50个字符行长更长.
我一直只是路过那些特定的路线,因为它们不是问题; 但是,它让我对在JS代码中处理长字符串文字的最佳方法感到好奇.
对于标记字符串,使用字符串连接是有意义的:
'<div>' +
'<h1>Foo</h1>' +
'<p>Lorem ipsum</p>' +
'</div>'
Run Code Online (Sandbox Code Playgroud)
但是我不认为它对URL有意义:
'http://example.com/foo/bar/baz/fizz/buzz/lorem/ipsum/etc/...'
Run Code Online (Sandbox Code Playgroud)
编辑
对于某些哈希值(例如用于API密钥),它也没有意义:
//i.e. this made up string of me bashing on my keyboard
'0aidf9ejvr0e9vjkilkj34ioijs90eu8f9948joljse890f90jiljoi4'
Run Code Online (Sandbox Code Playgroud) javascript ×9
html ×3
jquery ×3
string ×3
heredoc ×2
deprecated ×1
ecmascript-6 ×1
jslint ×1
multiline ×1
quotes ×1
readability ×1
w3c ×1