我有一个问题:我复制并粘贴了一本用word 2013编写的书中的行。这两行在文本区以完全相同的对齐方式精确显示。接下来,我将两个var Javascript和var stringa2放入stringa1代码中。我希望在文本区出现相同的东西,但结果却非常不同。这个外观令人失望,因此我为stringa1和stringa2编写了一个长度代码。这两个字符串的长度都是72,但在执行的脚本的屏幕输出中,stringa2的长度小于stringa1。从直方图的角度来看,72似乎不等于72 (为了更好地理解我的问题,这是一个相似的概念)。有人能帮我解释一下为什么会这样吗?谢谢。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<html lang="it">
</head>
<body>
<p style="font-family:monospace;">
<textarea cols="72" rows="2">
Ho  l'ordine   di   partire   per  la   zona  di   guerra, quasi improv-
visamente.     Mattina     d'ottobre.    Fatidico    1915.      Servizio
</textarea>
<br/>
<script>
var stringa1="Ho  l'ordine   di   partire   per  la   zona  di   guerra, quasi improv-";
var stringa2="visamente.     Mattina     d'ottobre.    Fatidico    1915.      Servizio";
document.write("<br>");
document.write("["+stringa1+"]"+"L="+stringa1.length+"<br>");
document.write("["+stringa2+"]"+"L="+stringa2.length+"<br>");
document.write("<br>");
</script>
</body>
</html>
发布于 2018-02-11 18:40:40
在超文本标记语言中,任何一系列空格(空格、制表符、换行符)都被视为一个空格,除非在某些特殊情况下。textarea就是其中的一个特例。如果您的document.write调用是在textarea内部编写的,那么您将获得与硬编码版本相同的行为:
<p style="font-family:monospace;">
<textarea cols="72" rows="2">
Ho  l'ordine   di   partire   per  la   zona  di   guerra, quasi improv-
visamente.     Mattina     d'ottobre.    Fatidico    1915.      Servizio
</textarea>
<br/>
<script>
var stringa1="Ho  l'ordine   di   partire   per  la   zona  di   guerra, quasi improv-";
var stringa2="visamente.     Mattina     d'ottobre.    Fatidico    1915.      Servizio";
document.write("<textarea cols='72' rows='2'>");
document.write(stringa1 + "\n");
document.write(stringa2 + "\n");
document.write("</textarea>");
</script>
其他位置的空间未合并:
pre元素中的
 CSS white-space style property设置为pre、pre-wrap、pre-line等的任何元素中的
https://stackoverflow.com/questions/48730587
复制相似问题