大多数编程语言的大多数样式指南建议最大行长度,通常为80个字符。对于HTML和JavaScript(当它嵌入在HTML中时),这似乎是不切实际的缩写。对HTML / JavaScript的实际行长度限制是否有共识?或者它通常是由开发人员的常识决定的?
答案 0 :(得分:28)
既然你提到了JavaScript,那么这就是Douglas Crockford对主题的看法:
避免使用超过80个字符的行。当一个陈述不适合单行时,可能需要打破它。在操作符之后放置中断,最好在逗号之后。在运算符之后的中断减少了分号插入掩盖复制粘贴错误的可能性。下一行应缩进8个空格。
答案 1 :(得分:11)
此限制似乎是古代 IBM打卡的遗产。 Why is 80 characters the 'standard' limit for code width?
我真的觉得很难处理HTML只有80个字符。它真的很快变得难以理解。所以我决定自己把 GitHub 的行长作为衡量标准。
根据操作系统和/或浏览器,似乎有不同的字符限制。但120应该是一个非常安全的价值。
在Ubuntu上:
- Firefox:126
- Opera 12.16:126
- 铬:113
在OSX 10.9上:
- Google Chrome:125
- Firefox:122
- Safari:121
来源:What is Github's character limit, or line length for viewing files on github?
另一方面,有时选择自己的标准是行不通的。为您的语言或框架编码标准或短语可能会迫使您坚持使用80个字符。在移动屏幕上阅读代码时至少可以提供帮助。
但是对于HTML我会将这个数字提升到120个字符。为了便于阅读。我的意思是想想所有类似CSS类的重型框架,比如Bootstrap,你的模板最终只有80个字符的长度? (除此之外,你最好选择Bourbon Neat,它不会污染你的大量课程的HTML。)
答案 2 :(得分:10)
谷歌称JS为500:https://developers.google.com/closure/compiler/faq#linefeeds
Closure Compiler故意每500次添加换行符 人物左右。防火墙和代理有时会损坏或忽略 大型JavaScript文件,行很长。每次添加换行符 500个字符可以防止出现此问题。
uglify --max-line-len 500
或grunt-contrib-uglify options: { maxLineLen: 500 }
我不确定该限制是否适用于HTML或CSS,但我还没有看到我使用的任何CSS压缩器的选项。
SMTP规则适用于HTML电子邮件: https://www.ietf.org/rfc/rfc0821.txt
命令行的最大总长度,包括命令字 并且CRLF是512个字符。
答案 3 :(得分:7)
80个字符的行限制从没有大量空间的屏幕时代产生。现在它就像是为了便于阅读,因此可以并排打开两个(或更多)不同的代码文件,而无需滚动查看每个代码文件。
这些原因仍然适用于HTML和JavaScript,但显然没有必要遵守它们。所以这取决于你。
我同意使用HTML可能很难保持在这个限制内,尽管使用JavaScript它不应该是一个问题。
答案 4 :(得分:3)
线路长度的最大限制是您感觉阅读和编辑的舒适度。就个人而言,我的任何代码都不会被重写而不适合在屏幕上显示。
答案 5 :(得分:0)
如何将所有HTML放在一行?浏览器将如何应对?我读过一些浏览器(不记得是哪一个)打破长线的地方。
从文件中删除新行是一种优化技术。您不需要为客户端提供与开发时相同的易于阅读的版本。你可以给他们一个剥离版本。为什么?带宽不是免费的。
答案 6 :(得分:0)
许多“服务”(例如某些终端窗口实现, GitHub 等)将不会换行并没有滚动条。
因此,超过72或80个字符的任何内容都可以被截断。
此外,即使有滚动条,它也有助于提高可读性,如果代码适合(或主要适合)单个屏幕宽度,则代码更易于阅读/理解/调试。
因此,虽然代码将运行,但可能并不总是能够完整显示它。