JavaScript基础之流程控制语句的用法


Posted in Javascript onAugust 31, 2017

第三部分:流程控制语句

JavaScript代码是书写位置:

JavaScript代码应该写在<script type=”text/javascript”></script>这一对标记中。

或者作为外部引用<script src="JavaScript代码路径"></script>

JavaScript的每一句代码请用分号作为结束。

输出语句

1、控制台输出:console.log();

它可以在控制台中输出一些信息,输出的信息就是console.log()中圆括号的内容。

在调试程序的时候回经常用这个语句。

2、弹出框输出:

alert();

使用alert可以在网页上弹出一个提示框显示alert()的圆括号中的信息。

prompt();

使用prompt可以在网页上弹出一个输入框,并且以prompt()的圆括号中的信息作为提示信息。

confirm();

包含确定和取消的弹出框。

3、页面输出:document.write();

直接会将内容显示在页面上。

选择语句

if....else语句

if(判断条件/boolean)
//满足条件会执行下面的代码

代码1;

else {
//当上面的条件不满足,或者boolean的值为false的时候会执行下面的代码2

代码2

}

此外,else后还可以继续加if判断

if(判断条件/boolean)
//满足条件会执行下面的代码

代码1;

else if(判断条件) {
//当上面的条件不满足,或者boolean的值为false的时候会执行下面的代码2

代码2

}

else if(判断条件)

。。。。。

else {
最后代码

}

Switch ...case语句

用来判断多个可能出现的值

switch 语句与 if 语句的关系最为密切,而且也是在其他语言中普遍使用的一种流控制语句。

switch (expression) {
case value: statement
break;
case value: statement
break;
case value: statement
break;
case value: statement
break;

default: statement
}

switch 语句中的每一种情形(case)的含义是:如果表达式等于这个值(value),则执行后面的语句(statement。而 break 关键字会导致代码执行流跳出 switch 语句。如果省略 break 关键字,就会导致执行完当前 case 后,继续执行下一个 case。通过为每个 case 后面都添加一个 break 语句,就可以避免同时执行多个case 代码的情况。

也可以多种情况混合。

switch (i) {
case 25:
/* 合并两种情形 */
case 35:
alert("25 or 35");
break;
case 45:
alert("45");
break;
default:
alert("Other");
}

需要注意的是switch 语句在比较值时使用的是全等操作符,因此不会发生类型转换(例如,
字符串"10"不等于数值 10)。

breakcontinue语句

break是在循环内部结束合格循环。

continue是在循环的内部结束本次循环,开始下一次循环:

循环语句

for循环是反复执行同一段代码。

for(var i = 1; 判断条件; i++){
要循环的代码块:

}

当程序运行到for的时候,会先声明一个变量i,并且赋值为1,判断i是否满足后面的判断条件,如果满足,执行下面的要循环的代码块,代码 块执行完成之后再执行i++,再判断判断条件是否满足,如果满足再次按照上面的流程执行,如果不满足,结束for循环。

for循环还可以用于嵌套,实现复杂的运算,冒泡排序就用到了for循环的嵌套。下面举两个for循环嵌套的例子。

打印直角三角形,

for (var i = 1; i <= 10; i++) {

for (var j = 1; j <= i; j++){

document.write("☆");

}

document.write("<br/>");

}

打印99乘法表

for (var i = 1; i < 10; i++) {

for (var j = 1; j <= i; j++) {

document.write(j + "*" + i + "=" + i * j);// 1 * 1 = 1

document.write(" ");

}

document.write("<br/>");

}

for in循环

for-in 用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。

举个例子

var x

var mycars = new Array()

mycars[0] = "Saab"

mycars[1] = "Volvo"

mycars[2] = "BMW"

for (x in mycars)

{

document.write(mycars[x] + "<br />")

}

while循环

while(判断条件/boolean){
代码块

}

当代码执行到while的时候,会先判断判断条件是否为true,如果为true,那么会执行while大括号中的代码块,代码块执行完毕以后,再次回到while中再进行判断,如果为true,再次执行while大括号中的代码块,并且再次回while,如果为false就不执行。

注意:将来在写代码的时候一定要注意循环的判断条件不能一直为true,否则会成为一个死循环。

do...while循环

do-while 语句是一种后测试循环语句,即只有在循环体中的代码执行之后,才会测试出口条件。
换句话说,在对条件表达式求值之前,循环体内的代码至少会被执行一次。

do {
statement
} while (expression);

do...while语句在开发中并不怎么用,用的最多的还是for循环,以及for循环嵌套。

补充:

Function函数对象

函数申明式

function fn(){

// 函数体

}

函数表达式(匿名函数)

var fn = function(){

// 函数体

}

// fn表示函数名称

// 函数表达式通常又叫匿名函数 因为没有函数名

函数的调用

fn();// 注意:函数只申明不调用是不会执行的

函数的参数

// 申明

function 函数名(形参1,形参2,形参3,){

// 函数体

}

// 调用

函数名(实参1,实参2,实参3);

函数名(实参1);// 这样写也不会有问题

函数名(实参1,实参2,实参3,实参4);// 这样写也不会有问题

// 注意:函数的实参个数可以和形参的个数不同

函数的返回值

function 函数名(){

return 要返回值;

}

// 注意:函数不写返回值时默认的返回值是undefined

函数的递归函数在内部调用自身函数叫递归

function fn(){
fn();
}

fn();

函数的回调被当做参数传递的函数叫回调函数

function fn1(){
console.log(“我是回调函数”);
}

function fn2(parameter){
parameter(); // 调用函数
// 这里的parameter是形参 代表传进来的函数fn1
}

fn2(fn1);// fn1就是一个回调函数
Javascript 相关文章推荐
javascript 控制 html元素 显示/隐藏实现代码
Sep 01 Javascript
基于jquery的bankInput银行卡账号格式化
Aug 22 Javascript
JS Pro-深入面向对象的程序设计之继承的详解
May 07 Javascript
JavaScript创建对象的写法
Aug 29 Javascript
JS冒泡事件的快速解决方法
Dec 16 Javascript
超级好用的jQuery圆角插件 Corner速成
Aug 31 Javascript
分享jQuery网页元素拖拽插件
Dec 01 Javascript
AngularJS基础 ng-click 指令示例代码
Aug 01 Javascript
jquery实现的table排序功能示例
Mar 10 Javascript
JS库之Waypoints的用法详解
Sep 13 Javascript
Vue工程模板文件 webpack打包配置方法
Dec 26 Javascript
Vue插值、表达式、分隔符、指令知识小结
Oct 12 Javascript
jquery操作ul的一些操作笔记整理(干货)
Aug 31 #jQuery
浅谈在fetch方法中添加header后遇到的预检请求问题
Aug 31 #Javascript
浅谈vue的踩坑路
Aug 31 #Javascript
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
Aug 31 #Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
Aug 31 #Javascript
基于JSON数据格式详解
Aug 31 #Javascript
浅谈js中的this问题
Aug 31 #Javascript
You might like
解析PHP留言本模块主要功能的函数说明(代码可实现)
2013/06/25 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
2019/02/27 PHP
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
用jquery方法操作radio使其默认选项是否
2013/09/10 Javascript
jquery 缓存问题的几个解决方法
2013/11/11 Javascript
jquery.idTabs 选项卡使用示例代码
2014/09/03 Javascript
JavaScript自定义等待wait函数实例分析
2015/03/23 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
谈一谈JS消息机制和事件机制的理解
2016/04/14 Javascript
Bootstrap学习笔记之css组件(3)
2016/06/07 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
微信小程序之选项卡的实现方法
2017/09/29 Javascript
vue中使用protobuf的过程记录
2018/10/26 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
关于uniApp editor微信滑动问题
2021/01/15 Javascript
一个超级简单的python web程序
2014/09/11 Python
Python3.2中的字符串函数学习总结
2015/04/23 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
2017/09/05 Python
使用Py2Exe for Python3创建自己的exe程序示例
2018/10/31 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
2020/02/21 Python
Django自关联实现多级联动查询实例
2020/05/19 Python
python中用Scrapy实现定时爬虫的实例讲解
2021/01/18 Python
纯CSS3制作漂亮带动画效果的主机价格表
2015/04/25 HTML / CSS
阿迪达斯新加坡官方网站:adidas新加坡
2019/12/06 全球购物
中介业务员岗位职责
2014/04/09 职场文书
空气环保标语
2014/06/12 职场文书
先进教育工作者事迹材料
2014/12/23 职场文书
预防职务犯罪警示教育心得体会
2016/01/15 职场文书
Python 中的Sympy详细使用
2021/08/07 Python
国产动画《万圣街》日语配音版制作决定!
2022/03/20 国漫