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延迟加载
Mar 09 Javascript
鼠标悬浮显示二级菜单效果的jquery实现
Oct 29 Javascript
JS实现定时自动关闭DIV层提示框的方法
May 11 Javascript
jquery+CSS实现的水平布局多级网页菜单效果
Aug 24 Javascript
理解javascript正则表达式
Mar 08 Javascript
jQuery中数据缓存$.data的用法及源码完全解析
Apr 29 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
概述javascript在Google IE中的调试技巧
Nov 24 Javascript
深入理解Javascript中的作用域链和闭包
Apr 25 Javascript
jQuery实现的form转json经典示例
Oct 10 jQuery
Vue组件之Tooltip的示例代码
Oct 18 Javascript
Vue如何获取数据列表展示
Dec 11 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 获取远程文件大小的3种解决方法
2013/07/11 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
Jquery Change与bind事件代码
2011/09/29 Javascript
THREE.JS入门教程(3)着色器-下
2013/01/24 Javascript
javascript打印输出json实例
2013/11/11 Javascript
javascript动态判断html元素并执行不同的操作
2014/06/16 Javascript
深入理解javascript变量声明
2014/11/20 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
js给网页加上背景音乐及选择音效的方法
2015/03/03 Javascript
详解JavaScript基于面向对象之继承
2015/12/13 Javascript
javascript类型系统——日期Date对象全面了解
2016/07/13 Javascript
jquery之别踩白块游戏的简单实现
2016/07/25 Javascript
简单实现Bootstrap标签页
2020/08/09 Javascript
node+koa实现数据mock接口的方法
2017/09/20 Javascript
vue项目tween方法实现返回顶部的示例代码
2018/03/02 Javascript
vue中v-model的应用及使用详解
2018/06/27 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
JavaScript冒泡算法原理与实现方法深入理解
2020/06/04 Javascript
JavaScript undefined及null区别实例解析
2020/07/21 Javascript
VUE : vue-cli中去掉路由中的井号#操作
2020/09/04 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
Python入门篇之文件
2014/10/20 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
python matplotlib饼状图参数及用法解析
2019/11/04 Python
Pytorch mask_select 函数的用法详解
2020/02/18 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
Python3内置函数chr和ord实现进制转换
2020/06/05 Python
什么是python类属性
2020/06/10 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
python中pyqtgraph知识点总结
2021/01/26 Python
详解HTML5中表单验证的8种方法介绍
2016/12/19 HTML / CSS
TALLY WEiJL法国网上商店:服装、时装及配饰
2019/08/31 全球购物
介绍Java的内部类
2012/10/27 面试题
盛大笔试题
2016/11/05 面试题
机电专业毕业生自我鉴定2014
2014/10/04 职场文书