JavaScript基础4——关于语句流程控制(分支语句、循环语句等)
分支语句
(1)if...else...语句,基本格式分三种,如下
<script type="text/javascript">
var i=50;
//if语句
if (条件)
{
条件成立时执行代码
} //if...else语句
if (条件)
{
条件成立时执行此代码
}
else
{
条件不成立时执行此代码
} //if...else if...else if...else...语句
if (条件1)
{
条件1成立时执行代码
}
else if (条件2)
{
条件2成立时执行代码
}
else
{
条件1和条件2均不成立时执行代码
}
</script>
(2)switch语句
<script type="text/javascript">
var i=2;
switch(i)
{
case 1:
document.write("i等于1")
break
case 2:
document.write("i等于2")
break
case 3:
document.write("i等于3")
break
default:
document.write("错误")
}
</script>
循环语句
(1)for循环(包括for语句和for...in语句)
/*
格式1:
for (变量=开始值;变量<=结束值;变量=变量+步进值)
{
需执行的代码
}
*/ <script type="text/javascript">
for (sProp in window)
{ document.write(sProp+"<br />");//显示 window 对象的所有属性 }
</script> /*
格式2:
for (property in expression)
{
需执行的代码
}
*/ <script type="text/javascript">
var array=new Array(1,2,3,4,5,6,7,8,9,0,-3);
// var array=[1,2,3,4,5,6,7,8,9,0,-3]; //这样也行
for (i in array)
{
document.write(array[i]+"<br>");//显示数组内容
}
</script>
奉上截图:

(2)while循环
/*
格式1:
while (expression)
{
需执行的代码
}
*/
<script type="text/javascript">
var i=10
while (i>0)
{
document.write(i+"<br />");
i--;
}
</script> /*
格式2:
do
{
需执行的代码
} while (条件);
*/ <script type="text/javascript">
var i=10
do
{
document.write(i+"<br />");
i--;
}while (i>0) </script>
(3)使用break和continue退出循环
break 命令可以终止循环的运行,然后继续执行循环之后的代码(如果循环之后有代码的话)。continue 命令会终止当前的循环,然后从下一个值继续运行。
//break语句
<script type="text/javascript">
var iNum = 0;
for (var i=1; i<10; i++) {
if (i % 5 == 0) {
break;
}
iNum++;
}
alert(iNum); //输出 "4"
</script> //continue语句
<script type="text/javascript">
var iNum = 0;
for (var i=1; i<10; i++) {
if (i % 5 == 0) {
continue;
}
iNum++;
}
alert(iNum); //输出 "8"
</script>
(4)*with 语句用于设置代码在特定对象中的作用域。提示:with 语句是运行缓慢的代码块,尤其是在已设置了属性值时。大多数情况下,如果可能,最好避免使用它。
//with语句
<script type="text/javascript">
1 var sMessage = "hello";
2 with(sMessage) {
3 alert(toUpperCase()); //输出 "HELLO"
4 }
</script>
- 异常处理
(1)try...catch...异常处理
/*
try
{
//在此运行代码
}
catch(err)
{
//在此处理错误
}
*/ //try...catch...例子
<script type="text/javascript">
var txt=""
try
{
adddlert("Welcome guest!");//alert拼写错误
}
catch(err)
{
txt+="错误描述: " + err.description + "\n\n";
alert(txt);
}
</script>
(2)Throw声明
throw(exception); exception可以是字符串、整数、逻辑值或者对象。
<script type="text/javascript">
var x=prompt("输入一个0到10的数值:","100");
try
{
if(x>10)
throw "Err1";
else if(x<0)
throw "Err2";
}
catch(er)
{
if(er=="Err1")
alert("值大了!");
if(er == "Err2")
alert("值小了!") ;
}
document.write("您输入的是:"+x);
</script>
(3)onerror事件
可以使用 onerror 事件捕获网页中的错误。(chrome、opera、safari 浏览器不支持,不建议使用)
//onerror 语法
/*
onerror=handleErrfunction handleErr(msg,url,l)
{
//Handle the error here
return true or false
}
浏览器是否显示标准的错误消息,取决于onerror的返回值。如果返回值为 false,则在控制台(JavaScript console)中显示错误消息。反之则不会
*/ // 例子
<head>
<script type="text/javascript">
onerror=handleErr;
var txt="";
function handleErr(msg,url,l)
{
txt+="错误信息: " + msg + "\n";
txt+="错误文件: " + url + "\n";
txt+="错误行数: " + l + "\n\n";
alert(txt);
return true;
}
function err()
{
adddlert("Welcome guest!");//alert拼写错误
}
</script>
</head> <body>
<input type="button" value="View message" onclick="err()" />
</body>
控制结构思维导图

JavaScript基础4——关于语句流程控制(分支语句、循环语句等)的更多相关文章
- 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)
目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...
- 1-24-case流程控制和while循环语句的使用
大纲: 1.while循环控制语句 while实战---批量添加规则用户 while实战---猜价格游戏 2.case流程控制语句和exit退出 exit实战---返回值测试 case实战---智能解 ...
- 『无为则无心』Python基础 — 15、Python流程控制语句(for循环语句)
目录 1.for循环语法 2.for循环中的break和continue 3.循环+else结构 (1)while...else (2)while...else退出循环的方式 (3)for...els ...
- python 流程控制(for循环语句)
1,for循环基本语法 2, for循环常用序列 3,for循环 else使用方法 1,for循环基本语法 for iterating_var in sequence: statements(s) 2 ...
- javascript基础入门之js中的结构分支与循环语句
javascript基础入门之js中的结构分支与循环语句 程序的结构①顺序结构:自上而下:②选择(分支)结构:多条路径,根据不同的条件,只执行其中一个:③循环结构:重复某些代码④配合特定的语句实现选择 ...
- JavaScript 流程控制-分支
JavaScript 流程控制-分支 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的,很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. 简单理解:流程控 ...
- 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句
050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...
- 049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句
049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...
- Java04-Java语法基础(三)流程控制
Java04-Java语法基础(三)流程控制 一.数据类型的转换 1.自动转换:在赋值运算中,占字节数大的类型会自动向字节小的类型转换 double d1 = 3.14; int t1 = d1; 2 ...
- 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结
053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
随机推荐
- bootstrap导航栏.nav与.navbar区别
刚刚看了bootstrap的导航栏,发现有点弄混了,现在来整理一下: 一.简单的ul,li组成的导航: <ul class="nav nav-pills justify-content ...
- 深入学习JS执行--创建执行上下文(变量对象,作用域链,this)
一.介绍 本篇继上一篇深入理解js执行--单线程的JS,这次我们来深入了解js执行过程中的执行上下文. 本篇涉及到的名词:预执行,执行上下文,变量对象,活动对象,作用域链,this等 二.预执行 在上 ...
- Tomcat多域名访问
对于域名解析相信很多小伙伴都了解过,就是我们在万网购买一个域名,比如hpugs.com,然后呢?我们希望域名与我们的服务器绑定,然后通过域名直接访问我们的项目,这就是本篇要和大家一起探讨的问题.下面开 ...
- Memcached 及 Redis 架构分析和区别比较
Memcached和Redis作为两种Inmemory的key-value数据库,在设计和思想方面有着很多共通的地方,功能和应用方面在很多场合下(作为分布式缓存服务器使用等) 也很相似,在这里把两者放 ...
- BOM物料清单在输入用料计划时快捷选择物料没有带出单位
问题: 在新增BOM物料清单时,输入用料计划,快捷选择物料没有带出单位,但是从清单查找里面选择物料,是可以自动带出单位的. 原因分析查找: 1.这是个自定义单据,到tools工具上查看相关设置,看清单 ...
- 《java.util.concurrent 包源码阅读》08 CopyOnWriteArrayList和CopyOnWriteArraySet
CopyOnWriteArrayList和CopyOnWriteArraySet从数据结构类型上来说是类似的,都是用数组实现的保存一组数据的数据结构,区别也简单就是List和set的区别.因此这里就先 ...
- TFboy养成记 tf.cast,tf.argmax,tf.reduce_sum
referrence: 莫烦视频 先介绍几个函数 1.tf.cast() 英文解释: 也就是说cast的直译,类似于映射,映射到一个你制定的类型. 2.tf.argmax 原型: 含义:返回最大值所在 ...
- 02-线性结构3 Reversing Linked List
题目 Sample Input: 00100 6 4 00000 4 99999 00100 1 12309 68237 6 -1 33218 3 00000 99999 5 68237 12309 ...
- Anaconda 安装 Python 库(MySQLdb)的方法
[已解决]Anaconda 安装 Python 库(MySQLdb)的方法 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 201 ...
- debounce去弹跳
通过返回闭包,来共用timer定时器,通过定时器的清除和设置来实现每次触发后重新计时. /** * * @param fn {Function} 实际要执行的函数 * @param delay {Nu ...