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 相关文章推荐
xtree.js 代码
Mar 13 Javascript
jquery获取焦点和失去焦点事件代码
Apr 21 Javascript
js控制网页背景音乐播放与停止的方法
Feb 06 Javascript
Javascript中3个需要注意的运算符
Apr 02 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
Nov 19 Javascript
9个让JavaScript调试更简单的Console命令
Nov 14 Javascript
jQuery中layer分页器的使用
Mar 13 Javascript
vuex 的简单使用
Mar 22 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
Aug 24 Javascript
微信小程序实现弹框效果
May 26 Javascript
使用JavaScript获取Django模板指定键值数据
May 27 Javascript
javascript开发实现贪吃蛇游戏
Jul 31 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
APACHE的AcceptPathInfo指令使用介绍
2013/01/18 PHP
PHP实现生成透明背景的PNG缩略图函数分享
2014/07/08 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
PHP实现带重试功能的curl连接示例
2016/07/28 PHP
Laravel解决nesting level错误和隐藏index.php的问题
2019/10/12 PHP
用javascript来实现动画导航效果的代码
2007/12/16 Javascript
高性能Javascript笔记 数据的存储与访问性能优化
2012/08/02 Javascript
关于extjs treepanel复选框选中父节点与子节点的问题
2013/04/02 Javascript
js函数中onmousedown和onclick的区别和联系探讨
2013/05/19 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
整理Javascript基础入门学习笔记
2015/11/29 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
jQuery实现倒计时重新发送短信验证码功能示例
2017/01/12 Javascript
Angular中sweetalert弹框的基本使用教程
2018/07/22 Javascript
vue基础之data存储数据及v-for循环用法示例
2019/03/08 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
使用Vue实现调用接口加载页面初始数据
2019/10/28 Javascript
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
基于Python在MacOS上安装robotframework-ride
2018/12/28 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
使用openCV去除文字中乱入的线条实例
2020/06/02 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
2021/02/20 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
社区学习十八大感想
2014/01/22 职场文书
人事文员岗位职责
2014/02/16 职场文书
党员廉洁自律承诺书
2014/05/26 职场文书
作风建设年活动总结
2014/08/27 职场文书
2015年妇幼保健工作总结
2015/05/19 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python
MySQL里面的子查询的基本使用
2021/08/02 MySQL
python turtle绘图
2022/05/04 Python
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers