语法、规范、错误、运算符、判断分支、注释

204 阅读1分钟

语句后面要写符号,JS引擎是根据分号来区分每一个语句的。

注:if for switch语句不需要加分号。

错误的2大类:

1、语法错误(syntaxError),特点:整个代码块都不执行; 2、通用错误,特点:程序中断执行; 注:脚本与脚本之间的错误是没有互相影响。

运算符:+ - x / % () =

var a=1,b=2,c=3;

var d=(a+b)*3;

//1、声明变量d

//2、变量a与变量b的值相加的结果,与c相乘得到结果f

//3、将f赋值给d

结论:括号运算符的优先级 > 普通运算符 > 赋值运算符。

加号运算符(+):字符串加 任何数据类型都是字符串拼接。

console.log(1/0);//infinity

console.log(0/1);//0

console.log(0/0);//NAN (not a number) 是Number数据类型

没有中间变量交换值: var a=2; var b=3; a=a+b; b=a-b; a=a-b;

前自增和后自增的区别:var a=2; var c=++a var b=a++; console.log(c,b);

前自增:先相加再赋值,后自增:先赋值后相加。

比较运算符:>,>=,<,<=,==,!=,===(全等) ASCII码:美国信息交换标准代码

var b=4>'5' //false number和string比较:string转number再比较。

var b='3'>'10' //true string和string比较:比较的是同位的ASCII码。

var b=NAN==NAN //NAN 和任何值都不相等

if 和switch 的选择场景: 如果条件是可枚举的,就选择switch,代码直观可读性强;否则选择if

逻辑运算符:&&、||、!

以下的6个值都是false:其他的全部是true:

undefined,null、NAN 、false、0、''

console.log(null||undefined||NaN||false||0||''||'hello world');//hello world

console.log(null||undefined||NaN||1||0||''||'hello world');//1

console.log('2'&&'3'&&undefined);//undefined