当前位置: 首页 > Web前端 > HTML5

前端代码编写规范

时间:2023-04-05 22:53:28 HTML5

前端代码编写规范JavaScript代码编写规范缩进每级由4个空格组成,避免使用制表符(Tab)进行缩进。每行的长度不应超过80个字符。如果超过80个字符,则在运算符后换行,并在下一行加两级缩进(8个字符)。doSomething(argument1,argument2,argument3,argument4,atgument5);原值1,字符串始终使用双引号并保持一行。2.特殊值null在下列情况下可用:(1)在初始化一个可以作为对象赋值的变量时使用。(2)用于与一个已初始化的变量进行比较,该变量可能是一个对象。(3)当函数的参数期望是一个对象时,作为参数使用。(4)当期望函数的返回值是一个对象时,作为返回值传入。在其他情况下,避免使用null3并避免使用特殊值undefined。要确定变量是否已定义,应使用typeof运算符。运算符间距二元运算符前后必须使用空格以保持表达式整洁。运算符包括运算符和逻辑运算符。//写得好varfound=(value[i]===item);if(found&&(count>10)){doSomething();}括号间距使用括号时,紧跟在左括号之后,紧跟在右括号之后括号前不应有空格。对象文字的左大括号应与表达式保持在同一行。每个属性的名称-值对应保留缩进。第一个属性应该放在左大括号之后的新行中。引号中的属性名,后面跟一个冒号(前面没有空格)如果属性值是函数类型,函数体应该在属性名下另起一行,前后各空一行它。前后可以插入一组相关的属性空行提高代码的可读性。右花括号占据一行varobject={key1:value1,key2:value2,func:function(){//doSomething},key3=value3};当对象字面量用作函数参数时,如果值是变量,左花括号应与函数名在同一行。doSomething({key1:value1,key2:value2});Note1.单行注释独占行注释,用于解释代码行末尾的下一行代码,用于解释其之前的代码多行,用于注释掉单行的情况代码块代码末尾的注释,你应该确保代码末尾和注释之间至少有一个缩进。单行注释前要有一个空格if(condition){//如果代码执行到这里,说明安全检查通过allowed();}行内注释varresult=something+somethingElse;//行内注释2.多行注释每条多行注释至少包含以下三行。第一行只包含/*注释的开头,这一行不应有其他内容。行以*开头并保持左对齐。这些行可以用文本描述。最后一行以*/开头并与上一行保持对齐。文本注释前不能有空行,星号后不能有空格}变量声明变量定义放在函数开头,使用var表达式,每行一个变量除了第一行,所有行都应该多缩进一层,这样变量名可以垂直对齐初始化变量应该在未初始化变量之前varcount=10,name="Nicoho",found=false,空;函数声明函数名和左括号之间不能有空格右括号和右左花括号之间要有空格,右边的花括号和a上的函数关键字之间要有空格线。逗号后面应该有一个空格。立即调用的函数在调用函数outer(arg1,arg2){varcount=arg1,name=arg2,found=false,empty;functioninner(){//code}//调用inner()的代码}命名变量要用驼峰命名,首字母小写,每个单词首字母大写,首字母为名词,变量名不要使用下划线函数名也使用驼峰式,首字母小写,第一个单词应该是动词,和变量名区别构造函数名使用驼峰式,首字母大写,以非动词开头的常量名称应该全部大写,而不是在相同的字母之间使用单个下划线来分隔对象的属性和方法。命名相同的变量和函数,私有属性或方法,在变量赋值前加下划线,如果右边是包含比较语句的表达式,需要用圆括号包裹相等运算符使用===(严格相等)和!==(严格不等于)代替等于(==)和不等于(!=)以避免弱类型转换错误价值=条件?值1:值2;statement1,simplestatement每行至多一条语句,所有简单语句以分号(;)结束2、复合语句中的语句比复合语句多缩进一级。左花括号应该在复合语句所在行的末尾;结尾花括号占一行,并保持与匹配语句开头相同的缩进。如果是if语句开头的关键字,后面跟一个空格,空格后面的左花括号if语句if(condition){statements}单行语句也需要for(i=0,len=10;iHTML标签的关闭1、自关闭标签不需要关闭,如:


等。不推荐:推荐方式:2.可选的关闭标签建议关闭,比如如:,
  • 3。结束标签必须关闭HTML页面使用双引号,标签和标签属性统一小写缩进。软制表符(4个空格)用于缩进。嵌套节点应该缩进;HTML标签嵌套规则1、HTML4/XHTML嵌套规则(1)内联元素不能嵌套块级元素(2)

    元素和

    ~

    元素不能嵌套块级元素(3)ul、li/ol、li/dl、dt、dd有父子关系标签;ul和ol只能跟在li后面,dl只能跟在dt.dd后面(4)a标签不能嵌套a;2.HTML5元素嵌套规则元素分类不再归类为块元素或内联元素(其实从来没有这样分类),而是按照以下分类:Flow(流元素)、Heading(标题元素)),Sectioning(章节元素),Phrasing(段落元素),Embedded(嵌入元素),Interactive(交互元素),Metadata(元数据元素)使用语义标签,尽可能少使用无意义的标签,仅用于设置样式,语义HTML结构,有利于搜索引擎理解。另一方面,当多人协作时,可以快速理解开发者的意图。HTML多媒体回溯页面中的图片、视频、canvas动画必须有替代显示内容。对于图片文件,我们可以使用有意义的替代文字(alt属性要求),对于视频和音频文件,我们可以添加说明文字或字幕。例如:代码格式规则在每个块元素、列表元素和表格元素之后,添加一个新的空行。行内元素写在一行上,块元素、列表和表格写在新的一行上。内容、表现和行为的分离尽量在文档和模板中只包含结构化的HTML;将所有表示代码移动到样式表中;将所有动作和行为移动到脚本中。此外,为了使它们之间的联系尽可能小,在文档和模板中应尽可能少地引入样式和脚本文件。主要规则如下:(1).页面中尽量不要引入两个以上的样式表,比如main.css和vendor.css。(2).保证页面只导入一个js文件(如果有多个文件,合并压缩后再导入)。(3).不要使用内联样式和内部样式。(4).不要使用表现元素,例如
    等(5)。不要在元素中使用appearance属性,例如align="center"。当采用HTML5标准进行结构构建时,需要在开头添加。CSS文件应该在head标签中引入,以便浏览器在输出HTML之前获取CSS信息。在标签末尾导入JavaScript文件,让页面显示后,编译JavaScript文件加快页面阅读速度,同时帮助JavaScript对页面中的元素进行操作.元素的操作应该在JavaScript代码中添加,而不是在HTML中。下面这个例子是错误的,后期维护HTMLBoolean属性值比较困难。HTML5规范中的disabled、checked、selected等属性不需要设置值。HTML代码注释如果可能,尽量不写注释,尽量减少文档体积;如果您必须添加评论,那么您必须遵循以下规则:(1)。详细的注释,解释解决问题的代码,解决方案,是否是新的解决方案等。(2).模块注释,github建议不要使用模块结束注释。(3).待办事项注释如:特别注意:注释文本与两端之间必须有一个空格(--)。如何判断网页标签的语义好不好:去掉style,看网页结构是否井井有条,是否还是很有可读性的span和span语义不明显时,可以用p或者div,尽量用p,因为p默认有上下边距,去除样式后可读性更好,有利于兼容特殊终端。不要使用纯样式标签,如bfontu,使用CSS设置语义强调的文字可以包裹在strong和em标签中,strong默认样式为粗体,em默认样式为斜体部分的语义tag:div主要用于布局,划分页面的结构;ul/ol主要用于无序列表/有序列表;dl/dt/dd当页面第一行类似于标题/简要描述时,应使用dl/dt/dd,然后是详细描述;span没有特殊意义,可以作为排版的辅助,然后在css中定义span;h1-h6标题,按重要性降序排列;h1是最重要的标题;label使表单更加友好,可以辅助表单布局;deprecated标签:font文本的外观、大小和颜色;u文本下划线;中心居中对齐;删除线;删除线;noframes忽略框架的内容;iframe定义嵌入式视图;isindex不推荐(可以搜索,改用input);dir目录式枚举;menu菜单列表;basefont定义基本字体;applet定义java程序;frame定义单个视图框架;frameset定义视图框架的通用格式;属性可读性。class(first)id、namedata-*src、for、type、hreftitle、altria-*、role2.id和classclass用于标识高度可重用的组件,因此应该放在第一位。id用于标识特定组件,应谨慎使用(例如,页面中的书签),因此排在第二位。id一般用于网页的总体布局,如logo、导航、主要内容、版权,标准名称为#logo、#nav、#content、#copyright。一般项目中,css中使用class,js使用id操作dom,不加样式(jq操作class一般不加样式)。表单每个input标签对应的描述文字需要使用label标签,通过给input设置id属性,在label标签中设置“for=someId”,将描述文字与对应的input关联起来

  • 猜你喜欢