前言
之前写的代码,感觉是没有灵魂的,你怎么写它就怎么做。加入了逻辑判断和循环等语句后,就相当于给代码注入了灵魂,它可以有自己的思维去判断该做什么事情
判断
比较运算符
运算符 | 描述 |
---|---|
== | 等于 |
=== | 绝对等于(值和类型均相等) |
!= | 不等于 |
!== | 不绝对等于(值和类型有一个不相等,或两个都不相等) |
> | 大于 |
< | 小于 |
>= | 大于或等于 |
<= | 小于或等于 |
逻辑运算符
三目运算符
这也是比较常用的一种判断语句,示例:
()中的是判断语句,此处判断age是否等于19,如果等于19,则给result赋值"年龄正确";否则,给result赋值"年龄错误"
result=(age==19)?"年龄正确":"年龄错误";
条件
在写代码的时候,经常会遇到需要根据不同条件执行不同逻辑的情况。在JavaScript中,我们可以使用条件语句完成这种需求:
1.if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码
2.if…else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码
3.if…else if…else 语句- 使用该语句来选择多个代码块之一来执行
4.switch 语句 - 使用该语句来选择多个代码块之一来执行
if语句
注意:只有在()中判断结果为true时,才会执行{}中的逻辑语句
语法
if (condition)
{
//当condition为 true 时执行的代码
}
//示例
var result;
if(condition > 0)
{
result = "博主真帅!";
}
if…else 语句
在条件为 true 时执行代码1,在条件为 false 时执行代码2
if (condition)
{
代码1
}
else
{
代码2
}
//示例
var result;
if(condition >0)
{
result = "博主真帅!";
}
else
{
result = "博主还是帅!";
}
if…else if…else 语句
选择多个代码块之一来执行
if (condition1)
{
当条件 condition1 为 true 时执行的代码
}
else if (condition2)
{
当condition2 为 true 时执行的代码
}
else
{
当condition1和condition2都不为 true 时执行的代码
}
//示例
var result;
if (condition > 0)
{
result = "博主真帅!";
}
else if (condition < 0)
{
result = "博主还是帅!";
}
//在此处,逻辑就是condition=0
else
{
result = "别想了,博主肯定是帅的!";
}
switch 语句
用于基于不同的条件来执行不同的动作,其实switch和if…else if…else很相似
工作原理:首先设置表达式 n(通常是一个变量),随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。
使用 break 来阻止代码自动地向下一个 case 运行
关键字default,表达式值与所有的case值都不匹配是执行下列语句
switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
与 case 1 和 case 2 不同时执行的代码
}
循环
如果需要重复多次的执行同一段代码,使用循环可以大大提高效率,减少代码的编写量
JavaScript中不同的循环类型:
1.for - 循环代码块一定的次数
2.for/in - 循环遍历对象的属性
3.while - 当指定的条件为 true 时循环指定的代码块
4.do/while - 同样当指定的条件为 true 时循环指定的代码块
for循环
语句 1 (代码块)开始前执行
语句 2 定义运行循环(代码块)的条件
语句 3 在循环(代码块)已被执行之后执行
for (语句 1; 语句 2; 语句 3)
{
被执行的代码块
}
这三个语句都是可选的,不是必须的
for (; 语句 2; 语句 3)
示例
var i=1,len=cars.length;
for (; i<len; i++)
{
document.write(cars[i] + "<br>");
}
for (语句 1;; 语句 3)
如果省略了语句 2,那么必须在循环内提供 break,否则循环就无法停下来
for (语句 1; 语句 2; )
示例
for (var i = 0; i<len; )
{
document.write(cars[i] + "<br>");
i++;
}
for/In 循环
通常用于循环取数组中的值
var person={name:"lv",sex:"man",age:19};
for (x in person) // x 为属性名
{
txt=txt + person[x];
}
while 循环
while 循环会在指定条件为真时循环执行代码块
注意:应注意条件的自增或自减,否则while会一直执行下去,造成浏览器崩溃
while (条件)
{
需要执行的代码
}
do/while 循环
该循环会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。所以,不管while的条件是否成立,代码块都会被执行一次
do
{
需要执行的代码
}
while (条件);
摄影分享
摄于 云南.玉龙雪山.蓝月谷