12种不合适的javascript语法校对
1 =Javascript有两组相等运算符,一组是!=,另一组是= =和=。前者仅在值中相等,而后者在值之外是相同的。
请尽量不要使用前一个组,只会使用= = = =和。由于默认类型转换规则很难记住。如果你不相信,请回答以下五个判断:对或错:
假= =假
false =未定义的
false = null
NULL =未定义的
0=
前三个是错误的,下两个是正确的。
2.with
用的初衷是减少input.such作为键盘
Obj。A = B对象;
Obj。C = D OBJ;
可以写成简短的
复制代码代码如下所示:
与(obj){
甲=乙;
C=D;
}
然而,实际运行时,解释器会先判断对象B和对象。D存在,如果没有,然后确定全局变量B和D的存在,这导致低效率和可能导致的事故,所以最好不要使用语句。
3.eval
eval来执行字符串直接。这份声明也不应该因为它的性能和安全问题,使代码更难阅读。
eval可以做什么可以不需要如
eval(自我价值= MyObject。+钥匙+;);
可直接书写
自我价值= MyObject MyKey } {;
至于通过Ajax操作返回的JSON字符串,可以使用官网提供的解析器json_parse.js。
4.continue
这个命令的功能是返回到循环的头部,但是循环将返回到头部,因此通过适当的构造,可以避免这一命令,并提高效率。
5.switch渗透
默认情况下,开关结构中的case语句是顺序执行的,除非遇到中断、返回和抛出。一些程序员喜欢利用这个特性,例如
复制代码代码如下所示:
开关(n){
案例1:
案例2:
打破;
}
很容易出错,很难找到,因此建议避免切换,如果有问题,加上中断。
复制代码代码如下所示:
开关(n){
案例1:
打破;
案例2:
打破;
}
6。单排块结构
如果,而做的,和是块结构的陈述,但他们也可以接受commands.such为单线
如果(ok)t=真;
甚至写
如果(ok)
T=真;
这对阅读代码不好,将来添加语句时很容易出错,建议添加圆括号,不管是否只有一行命令。
如果(ok){
T=真;
}
7 + +和-
增量式运算符+ +和减运算符——直接从表面的C语言中可以使代码非常紧凑,但它将使代码看起来更复杂和困难。因此,为了代码的干净性和可读性,良好的代码是不好的。
8。位运算符
Javascript充分运用java操作,包括按位AND,OR |,按位异或,位非~ ^左、右移位> 0 > > >。
这个操作符是一个整数,所以它是完全无用的Javascript,因为在Javascript中,所有的数据都保存为一个双精度浮点数。如果他们使用Javascript将算术数第一的整数,然后执行操作,从而降低了速度,很容易混淆。操作逻辑与位运算符。
9.function声明
在Javascript中定义函数有两种方式。
函数富(){ }
和
函数(){ }
这两种书写完全相同,但是在进行解析时,前者通过解析器自动提升到代码的头部。因此,函数首先应该定义使用后的需求,因此在定义函数时,所有函数都应采用后者。
10。用于基本数据类型的包对象
Javascript的基本数据类型包括字符串、数字、布尔值,它们都有相应的包装对象、字符串、数字和布尔值,因此,有人将定义类似的值:
复制代码代码如下所示:
新字符串(Hello World);
新号码(2000);
新布尔(false);
这是绝对不必要的,很难写,所以建议不要使用它。
此外,不建议使用新对象和新数组,可以替代{ }和{ }。
11.new声明
Javascript是第一个广泛使用的语言支持lambda函数的世界,它本质上是一种Lisp功能相同的编程语言。但在当今世界上,超过90%的程序员使用对象导向程序。为了靠近主流,Javascript做妥协,采用类的概念,使对象能够根据课堂生成。
类是用这种方式定义的:
复制代码代码如下所示:
var =函数(名称){
this.name =名称;
this.saying = 'meow;
}
然后,重新生成一个对象
VaR MYCAT =新猫('mimi);
通过使用功能和使用新生成的对象其实是很奇怪的生成类的语法,其中没有符合直觉,当你使用它时,忘记了添加新的和成为一个执行功能很容易,然后一些全局变量无法解释。因此,建议不要创建这样的对象,并采用可变的方法。
道格拉斯克罗克福德给出了一个函数:
复制代码代码如下所示:
object.beget =功能(o){
函数(o){ };
f.prototype = O;
返回新f;
};
当创建一个对象时,这个函数用于操作原型对象:
复制代码代码如下所示:
var
姓名,
说:'meow
};
VaR MYCAT = object.beget(猫);
在生成对象之后,相关的属性可以由它们自己分配:
mycat.name = 'mimi;
12.void
在大多数语言中,空是一种类型,不表示任何值。但是在Javascript中,空是一个操作符,接受一个算术数,然后返回到未定义的值。
空值0;未定义的
这个命令不实用,很混乱。建议避免使用。