前言在本文中,将会介绍如何使用HTML5和Javascript去设计一个简单的绘图程序。HTML5的一个新的特性是canvas画布功能,通过canvas画布的强大功能可以实现绘画不少图形和其他绚丽的功
顺晟科技
2021-06-16 10:57:25
124
这是一套适用于JavaScript程序的编码规范。它基于Sun的Java程序编码标准。但是因为JavaScript不是Java,所以做了很大的修改。
软件的长远价值直接来自于它的编码质量。在一个程序的整个生命周期中,它可能被许多人阅读或修改。如果一个程序能够清晰的展现出它的结构和特点,就可以减少以后修改的时候出错的可能性。编程规范可以帮助程序员增加程序的健壮性。
所有的JavaScript代码都向公众公开。所以要保证它的质量。
保持干净整洁很重要。
JavaScript程序应该独立存储在带后缀的文件中。js。
JavaScript代码不应包含在HTML文件中,除非它是只属于这一部分的特定于段的代码。HTML中的JavaScript代码会明显增加文件大小,无法缓存和压缩。
filename.js应该尽可能放在正文之后。这可以减少由于加载脚本而导致的其他页面内容加载延迟的问题。不需要使用语言或类型属性。MIME类型由服务器决定,而不是scripttag。
缩进的单位是四个空格。避免使用Tab键缩进(即使现在是21世纪),也没有统一的Tab长度标准。虽然空间的使用会增加文件大小,但在局域网中几乎可以忽略,在最小化的过程中可以消除。
避免每行超过80个字符。当一个语句不能写成一行时,考虑折叠行。在操作数后换行,更好是逗号。运算符后换行可以降低复制粘贴引起的错误被分号覆盖的概率。下一行应该缩进8个空格。
不要吝啬评论。给以后需要理解你的代码的人(也许是你自己)留下信息是非常有用的。注释应该像它们注释的代码一样清晰明了。偶尔幽默一点就更好了。切记避免冗长或情绪化。
及时更新评论也很重要。错误的注释会使程序更难阅读和理解。
让评论有意义。重点放在解释不容易马上理解的逻辑上。不要浪费读者的时间读:之类的东西
I=0;//让I等于0
使用单行注释。块标注是用来标注公文和无用代码的。
所有变量必须在使用前声明。JavaScript不一定要这样做,但是可以让程序很容易读取和找到未声明的变量(它们会被编译成全局变量)。
将var语句放在函数的开头。
更好将每个变量的声明语句放在单独的一行,并添加注释。所有变量都按字母顺序排序。
var currentEntry//当前选中项目var级别;//缩进程度var size//表格大小
JavaScript没有块作用域,C/C /Java程序员很容易因为在块中定义变量而产生误解。定义函数头部的所有变量。尽量少用全局变量。不要让局部变量覆盖全局变量。
所有函数在使用前都要声明。内部函数的声明遵循var语句。这有助于确定哪些变量在函数范围内。
函数名和((左括号)之间不应有空格。应该在起始程序体的(右括号)和{(左括号)之间插入一个空格。函数程序体应该缩进四个空格。}(右大括号)与声明函数的行的标题对齐。
函数outer(c,d){ var e=c * d;函数inner(a,b){ return(e * a)b;} return inner(0,1);}
下面的编写方法可以在JavaScript中正常使用,因为在JavaScript中,函数和对象的声明可以放在表达式允许的任何地方。并且它使得内联函数和混合结构可读性更好。
函数GetElementsByclassname(ClassName){ var results=[];walkTheDOM(document.body,function(node){ var a;//类名数组var c=node.className//节点的类名var I;//循环计数器//如果节点有类名,那么就把它拆分成一个简单名称的列表。//如果它们中的任何一个匹配所请求的名称,那么将该节点附加到结果集。if(c){ a=c . split(');for(I=0;i .长度;I=1){ if(a[I]===CLaSS name){ results . push(node);打破;} } } });返回结果;}
如果函数是匿名的,函数和((左括号)之间应该有空格。如果省略空格,会让人觉得函数名就是函数。
div . onclick=function(e){ return false;};that={ method : function(){ return this . datum;},datum : 0 };
尽量不要使用全局函数。
变量名应该由26个大写和小写字母组成.z,a.z),10个数字(0.9)和_(下划线)。避免使用国际化字符(如中文),因为它们在任何地方都不容易阅读和理解。命名时不要使用$(美元符号)或(反斜杠)。
请勿将_(下划线)用作变量名的个字符。有时用来表示私有变量,但实际上JavaScript并不提供私有变量的功能。如果私有变量很重要,就用私有成员的形式。应该避免这种误导性的命名约定。
大多数变量名和方法名应该以小写字母开头。
必须与new一起使用的构造函数名称应以大写字母开头。当new被省略时,JavaScript不会抛出任何编译错误或运行错误。忘记添加新的会导致不好的事情发生(比如会被当作正常函数),所以构造函数名大写是我们尽量避免这种情况的方法。
全局变量都要大写。(JavaScript没有宏,也没有常量,不会引起误解。)
每行最多包含一条语句。放;(分号)在每个简单语句的末尾。请注意,函数赋值或对象赋值语句也是赋值语句,应该以分号结束。
JavaScript可以把任何表达式当作一条语句。很容易隐藏一些错误,尤其是误加额外标记的错误。只有在赋值和调用时,表达式才应被视为单独的语句。
复合语句是包含在{}中的一系列语句(花括号)。
封闭语句必须多缩进四个空格。
{(左大括号)应该在复合语句的末尾。
}(右大括号)应该与行首对齐{(左大括号)
大括号应该用在所有复合语句中,即使只有一个语句,当它们是控制结构的一部分时,如if或f or语句。这样做可以避免以后添加语句导致的错误。
语句标记是可选的,只有下列语句必须标记为:while、do、for、switch。
不要使用()(括号)将返回值包含在带有返回值的return语句中。如果返回一个表达式,该表达式应该与return关键字在同一行,以避免出现false加号的错误。
如果语句应采用以下格式:
if (condition){语句;}if (condition) {语句;} else {语句;}if (condition) {语句;} else if (condition) {语句;} else {语句;}
for语句应采用以下格式:
for(初始化;条件;update) {语句;} for(object中的变量)if (filter) {语句;}
种形式的循环用于相关参数已知的数组循环。
第二种形式适用于对象。对象原型中的成员将包含在迭代器中。通过预定义的hasOwnProperty方法:来区分真实对象成员是一个很好的方法
for(variable in object)if(object . HasownProperty(variable)){语句;}
while语句应该采用以下格式:
while (condition){语句;}
Do语句应采用以下格式:
do {语句;} while(条件);
与其他复合语句不同,do语句总是采用;(分号)结尾。
switch语句应采用以下格式:
switch(expression){ case expression :语句;default:语句;}
每个案例都与开关对齐。这样可以避免过度缩进。
每组语句(默认除外)都应以break、return或throw结尾。不要让它按顺序往下走。
Try语句应采用以下格式:
尝试{语句;} catch (variable){语句;}尝试{语句;} catch (variable){语句;}最后{语句;}
避免使用继续语句。很容易使程序的逻辑过程模糊不清。
不要使用with语句。
用空行分隔逻辑上相关的代码块可以提高程序的可读性。
在以下情况下,空格应使用:
(左括号)后面的关键字应该用空格隔开。
函数参数和((左括号)之间不应有空格。这有助于区分关键字和函数调用。
除了。(点)和((左括号)和[(左括号)应该用空格与操作数分开。
一元运算符及其操作数之间不应有空格,除非运算符是一个单词,如typeof。
每个都在控制部分,如for语句中;(分号)后面必须跟一个空格。
每一个,(逗号)后面应该跟一个空格。
使用{}代替新对象()。使用[]代替新的数组()。
当成员名称是一组有序的数字时,使用数组来保存数据。当成员名称为不规则字符串或其他名称时,使用对象保存数据。
避免使用逗号运算符,除非是在特定for语句的控制部分。(这不包括对象定义、数组定义、var语句和参数列表中使用的逗号分隔符。)
在JavaScript中,块没有字段。只有函数才有字段。除非在复合语句中,否则不要使用块。
避免在if和while语句的条件部分赋值。
if (a=b) {
是正确的说法吗?或者
if (a==b) {
是吧?避免这种不容易判断对错的结构。
使用===和!==运营商会相对好一些。==还有!=运算符执行类型转换。特别是,不要使用==与错误的值(false,null,undefined,"",0,nan)进行比较。
注意跟紧或者。这种形式很容易保持混乱。为了便于理解,应该插入括号。
total=my InPut . value小计;
更好写出来
total=subtotal(MyInput . value);
这样就不会被误认为。
Eval是JavaScript中最容易被滥用的方法。避免使用。
Eval有一个别名。不要使用函数构造函数。不要将字符串参数传递给setTimeout或setInterval。
18
2022-10
25
2022-09
15
2022-09
15
2022-09
15
2022-09
15
2022-09