1、错误
(1)SyntaxError语法错误
在JavaScript中错误大体分为两大类:语法错误 (语法有错误所有的语句都不会执行)
<script type="text/javascript">
console.log(1);
console.log(2); // 中文分号会报语法错误 SyntaxError语法错误;
console.log(3);
</script>
通用错误 (特点是中断执行,错误之前的代码会执行)
(2)ReferenceError引用错误。
引用错误是通用错误的一种
<script type="text/javascript">
console.log(1);
console.log(2);
console.log(a); // Uncaught ReferenceError: a is not defined
console.log(3);
</script>
脚本块与脚本块之间的错误(无论是语法错误还是通用错误)是不会相互影响的
这也是合乎常理的,不同的功能写在不同的脚本块里面,这是项目开发中非常常见的一件事情,如果互相影响的话就没有意义了。
<script type="text/javascript">
console.log(1);//中文分号
</script>
<script type="text/javascript">
console.log(1); // 还会执行
</script>
2、运算符
(1)+ - * / % ()
括号运算 > 普通运算 > 赋值
+可以做字符串拼接,任何数据类型的值 + 字符串都是字符串
console.log(0/0); // NaN NaN是数字类型
console.log(1/0); // Infinity 数字类型
console.log(-1/0); // -Infinity 数字类型
NaN与包括自己在内任何东西都不相等
(2)交换值问题
var a = 1,
b = 2;
var c = a;
a = b;
b = c;
console.log(a,b);
var a = 1,
b = 2;
a = a + b;
b = a - b;
a = a - b;
(3)、< >= <= == === != !==
string遇到number,会先转化成number再比较
var bool = 1 < "2";
console.log(bool); // true
字符串与字符串比较比较的是ASCll码
console.log("a" < "b"); // true
console.log("4.5" < "11"); // false
3、 判断分支
在开发的过程中,如果if中的条件是互斥的加上else
switch(变量){
case 值:
语句;
break; // break不是switch专用的,break用来中断循环
default:
语句
}
一般来说,判断值范围的或者条件是多个的用if比较,如果是定值的用switch比较好。
逻辑运算
&&与 ||或 !非
undefined, null, NaN, “”, 0, false 这6个一定为假,除了这些都为真
&&遇到真就往后走,遇到假或走到最后就返回当前的值
||遇到假就往后走,遇到真或者走到最后就返回当前的值
var a = 1 && 2;
var b = 1 || 2;
console.log(a, b); // 2 1
应用场景
var name = '';
console.log(name || '未找到数据');
//每次在做鼠标事件的时候都会用到 ||
a.onclick = function(e){
var event = e || window.event;
}
4、注释
// 单行注释
/* 块注释
*
*
/