基本语法与语句

接下来我们来学习JavaScript基础的语法,这些语法理解的地方还比较多,大家可以结合实战来学习它。

运算符

比较运算符

比较运算符也叫关系运算符,有大于(>),小于(<),等于(==),不等于(!=),大于等于(>=),小于等于(<=),全等(===)。

大家注意一个等号=是赋值,两个等号=才是等于,三个等号=是全等,全等的意思是数值、类型等都一样。

逻辑运算符

逻辑运算符有&&,||,!。比如x&& y,就是满足x且y的条件,x || y,就是满足x或y的条件,! x,就是满足非x的条件。

赋值运算符

赋值运算符里有一些奇奇怪怪的简写,有时看书时会感觉讲的莫名其妙。比如我们先看下面的x+=y:

类似的还有x-=y,相当于x=x-y等等

遇到概念上有不懂的地方,可以实际动手写个代码,输出一个结果,很多概念就会更容易理解,倒不用去理解书本上的理论描述。

条件语句

两个条件else语句

如果指定的条件也就是if()括号内的条件成立(也就是为true) ,则执行相匹配的代码,若为 false,则执行另一个语句。

也可以不写else{},当if里的条件满足时,执行if里的代码,不满足时就不执行,只有if一个条件的语句也叫if语句,这里就不举例了。

 

多条件else if语句

所有的if()的括号内都是条件,如果条件满足,则会执行与之对应的代码块。

 

switch语句

switch 语句用于基于不同的条件来执行不同的动作,break 来阻止代码自动地向下一个 case 运行,default 关键词来规定匹配不存在时做的事情。

switch()括号内的为变量,case 后面为变量的值。当day=1时执行:后面的语句,执行之后即中断执行,这个和if ..else if..else语句有点区别。

其实只要switch(x)里的值x 与case y的条件相等即可,x不一定为变量,比如swith(true),case day=1,也是可以的。

循环语句

while语句

while语句会创建一个循环语句,循环一直持续到while()括号内的条件不满足才停止(也就是条件为false)。先执行条件表达式,然后执行语句。

  • 一开始i=0,满足i<3的条件,于是执行代码块,i++,这时i加1,i由0变成1;
  • i=1,还是满足i<3的条件,再加一次1,变成2;
  • i=2,还是满足条件,再加一次1,直到i=3不满足条件循环才停止

 

do…while语句

do…while语句会创建一个循环来执行语句,直到该语句条件表达式的值为false。先执行语句,再执行条件表达式,该语句至少会执行一次。

起初i=0,执行do里面的代码,i加1,变成了1,1加上一个空格并赋值给result,也就是第一次循环时result的结果为1+一个空格;这时再来执行while里的条件。

do…while循环和while循环不同的地方在于:它不是在每次循环开始的时候判断条件,而是在每次循环完成的时候判断条件。所以do…while循环不管条件是否满足,是一定会先执行一次循环的,而while语句不满足条件就不会执行循环。

for语句

for语句就是把相同的代码执行很多次的一个循环,for语句也常常用于遍历。

我们来了解一下()内的意思,首先初始化i为0,i<=100是条件,只要i满足条件,就会执行i++,也就是每次循环一次+1。

  • 起初i=0,满足条件,执行x+0,并把0+0赋值给x,x还是0,但是i自增为1,
  • i=1还是满足条件,执行x=x+i,也就是0+1=1,并把1赋值给新的x,所以输出x的结果为1,这时i自增为2;
  • i=2还是满足条件,执行x=x+i,也就是1+2=3,并把3赋值给新的x,所以输出x的结果为3,这时i自增为3

条件运算符

条件运算符是JavaScript中唯一需要三个操作数的运算符。运算的结果根据给定条件在两个值中取其一。语法是:条件 ? 值1 : 值2

当 age 大于等于18的时候,执行值1,否则执行值2,条件运算符和else语句大致是相同的。

本节任务

  1. 了解基础的运算符;
  2. 掌握条件语句;
  3. 掌握循环语句