Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么JavaScript压缩器将单引号替换为双引号?_Javascript_Quotes_Minify - Fatal编程技术网

为什么JavaScript压缩器将单引号替换为双引号?

为什么JavaScript压缩器将单引号替换为双引号?,javascript,quotes,minify,Javascript,Quotes,Minify,制作一些Bookmarklet时,我尝试使用JavaScript迷你程序,比如or。然而,我没有使用这些,因为它们用双引号替换了每个单引号。我不能使用双引号的代码,因为我应该用双引号将代码括起来,如: <a href="javascript:alert('hello')">hello</a> 所以,我用缩小。我想知道为什么其他迷你们取代报价。替换引号不会缩小代码。编码样式对于精简的代码并不重要。那么原因是什么呢?在这个答案中纯粹是猜测: 加强风格的一致性 由于重复

制作一些Bookmarklet时,我尝试使用JavaScript迷你程序,比如or。然而,我没有使用这些,因为它们用双引号替换了每个单引号。我不能使用双引号的代码,因为我应该用双引号将代码括起来,如:

<a href="javascript:alert('hello')">hello</a>


所以,我用缩小。我想知道为什么其他迷你们取代报价。替换引号不会缩小代码。编码样式对于精简的代码并不重要。那么原因是什么呢?

在这个答案中纯粹是猜测:

  • 加强风格的一致性
  • 由于重复的字符序列,一致性减少了gzip的大小
真的想不出什么别的了。
不过,他们可以选择单引号而不是双引号。

这是一行HTML,不是JavaScript。在纯JavaScript中,总是可以用反斜杠转义嵌入的引号。这是Bookmarklet的示例代码。在这个例子中,我想缩小的代码是
警报('hello')
,缩小器可以缩小到
警报(“hello”)
。在这种情况下,你不能简单地执行
?@StephenChung是的!)(面向未来读者)既然你谈到谷歌关闭。。编译器不会盲目地用双引号替换单引号;相反,当单引号和双引号“编译”为相同长度的字符串时,它会选择一个最佳的(用于缩小)引号字符,并默认为双引号。自2012年10月30日起,有一个选项可以使用cli开关将默认引号字符从双引号更改为单引号:
——格式化单引号
。要了解更多信息,请阅读本文。可能是为了更好地压缩。好吧,不管是什么原因,它破坏了我的bookmarklet。