emmm,其实这个标题不是那么的准确,因为下面提到的这些易错点,
在其他语言中也可能存在。但是也想不到其他更贴切的标题。
例:
在if/else与剧中的应用错误
if 条件语句返回 true (不是我们预期的)因为条件语句执行为 x 赋值 10,10
为 true。:
var x = 0;
if (x = 10)
————————————————
if 条件语句返回 false (不是我们预期的)因为条件语句执行为 x 赋值 0,0 为 false:
var x = 0;
if (x = 0)
————————————————
在常规的比较中,数据类型是被忽略的,以下 if 条件语句返回 true:
var x = 10;
var y = "10";
if (x == y)
————————————————
严格的比较运算中,=== 为恒等计算符,同时检查表达式的值与类型,以下 if 条件语句返 回 false:
var x = 10;
var y = "10";
if (x === y)
————————————————
这种错误经常会在 switch 语句中出现,switch 语句会使用恒等计算符(===)进行比较:以下实例会执行 alert 弹窗:
var x = 10;
switch(x) {
case 10: alert("Hello");
}
————————————————
以下实例由于类型不一致不会执行 alert 弹窗:
var x = 10;
switch(x) {
case "10": alert("Hello");
}
加油!!!
JavaScript使用误区
最新推荐文章于 2024-08-03 17:26:07 发布