首頁 > web前端 > js教程 > 主體

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

WBOY
發布: 2022-08-03 18:08:45
轉載
2431 人瀏覽過

本篇文章為大家帶來了關於javascript的相關知識,其中主要介紹了關於JavaScript中流程控制結構的相關問題,流程控制主要有三種結構:分別是順序結構,分支結構和循環結構,這三種結構代表程式碼執行的順序,下面一起來看一下,希望對大家有幫助。

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

【相關推薦:javascript影片教學web前端

##流程控制語句

在一個程式執行的過程,各條碼的執行順序對結果是有直接影響的,汗多時候我們要透過控製程式碼的執行順序來實現我們要完成的功能

簡單理解:流程控制就是要控制我們所寫的程式碼按照什麼樣的順序來執行,以此達到我們的目的。

流程控制主要有三種結構:分別是順序結構,分支結構和循環結構,這三種結構代表程式碼執行的順序。

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

順序結構

順序結構是程式中最簡單的,最基礎的流程控制,我們之前寫的程式碼都屬於順序結構(也就是從上往下依序執行),它沒有固定的語法結構,程式會依照程式碼的先後順序,依序執行

分支結構

從上到下執行程式碼的過程中,根據不同的條件,執行不同的路徑程式碼(執行程式碼多選一的過程),從而得到不同的結果

1.21js語言提供了兩個分支結構語句

    if語句
  • switch語句
#if語句

##//條件成立執行程式碼,否則什麼也不做

if(條件式){

//條件成立執行的程式碼語==條件表達式為真才執行

}

語句可以理解為一個行為,循環語句和分支語句就是典型的語句,一個程式由很多個語句組成,一般情況下,會分割成一個一個的語句

#程式碼示範

		var age=19;
		if(age>=18){
		console.log('你已经是成年人了');
            //输出你已经是成年人了,因为age=19;,大于18就会执行if里面的语句
		}
		
		var age=1;
		if(age>=18){
		console.log('你已经是成年人了');
            //啥也不输出。age=1;<p>執行流程</p><p><br><img src="https://img.php.cn/upload/article/000/000/067/466dcbcb1041786ee9a269be9261ee7c-1.png" alt="完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)"></p>if的加強版if else語句(雙分支語句)<h4><strong>##語法結構</strong></h4><p>//條件成立,執行if裡面程式碼,否則執行else裡面的程式碼</p><blockquote>#if(條件式){<p></p>
<p>//滿足條件執行的程式碼<!-- --></p>}else{<p></p>
<p>//不符合條件執行的程式碼<!-- -->##}</p>
<p>##執行流程</p> <p></p>
</blockquote><p>程式碼示範</p><pre class="brush:php;toolbar:false">		var age=prompt('请输入你的年龄');//用户输入
		if(age>=18){
			console.log('你可以喝酒了');
		}else{
			console.log('不好意思未成年人只能喝AD钙');
		}
	//判断年份是否为润年
		var year=prompt('请输入年份:');
		if(year%4==0&&year%100!=0||year%400==0){
			alert('您输入的年份是闰年');
		}else{
			alert('您输入的年份是平年');
		}
登入後複製

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)if 語句的超級增強版if else if(多分支語句)

##語法結構

//適用於檢查多重條件

if(條件式){

#語句1;

}else if(條件表達式){

語句2;

}else if(條件表達式){

##語句3;

……

}else{

//上述條件都不成立執行此程式碼

}

流程控制

程式碼示範
	//迷你计算器  : 输入两个数以及运算符号得出相应
			
			var yi = +prompt('请输入第一个数字'); //请用加减乘除隐式转换成数字类型,或者用					praseInt(变量)或parsefloat(变量)整数和浮点数
			var fuhao = prompt('请输入运算符');
			var er = +prompt('请输入第二个数字');
			if (fuhao == '+') {
				var shu = yi + er;
			} else if (fuhao == '-') {
				var shu = yi - er;
			} else if (fuhao == '/') {
				var shu = yi / er;
			} else if (fuhao == '*') {
				var shu = yi * er;
			} else if (fuhao == '%') {
				var shu = yi % er;
			} else {
				alert('请按要求输入:');
			}
			alert(shu);
登入後複製

switch語句

switch語句也是多分支語句,它用於基於不同的條件;來執行不同的程式碼,當要針對變數設定一系列的特定值時選用switch完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

switch(表達式){

case value1:

//表達式等於value1時要執行的程式碼

break;

case value2:

//表達式等於value2時要執行的程式碼

break;

default:

//表達式不等於任一value時要執行的程式碼

}

流程控制

程式碼示範
		var fruit =prompt('请输入你要买的水果:');
		switch(fruit){
			case '苹果':
			alert('苹果的价格是:3.5/斤');
			break;
			case '荔枝':
			alert('荔枝的价格是:10.5/斤');
			break;
			default:
			alert('没有水果');
		}
登入後複製

注意

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)#我們在開發中表達式我們經常寫成變數

當fruit的值和case 裡面的值符合時必須是全等,也就是資料型別和值都必須一樣

break 如果目前的case裡面沒有break 則不會退出switch 會繼續執行下一個case

  • switch語句和if else if語句的區別
  • 在一般情況下,它們兩個語句可以相互轉換

switch … …case 語句通常處理case為比較確定值的情況,而if ……else ……語句更靈活,常用於範圍判斷(大於,等於某個範圍)
  • switch语句进行条件判断后直接执行到程序的条件语句,效率更高,而if ……else ……语句有几种条件,就得判断多次。

  • 当分支比较少时,if……else……语句的执行效率比switch语句高

  • 当分支比较多时,switch语句的执行效率比较高,而且结构更清晰

循环结构

循环的目的

在实际问题中,有许多具有规律性的重复操作,因此在程序中要执行这类操作就要重复执行某些语句

Js中的循环

在Js中,主要有三种类型的循环语句

  • for循环
  • while循环
  • do ……while循环

for循环

在程序中,一组被重复执行的语句被称为循环体,能否继续重复执行,取决于循环终止的条件,由循环体及

循环终止条件组成的语句,被称为循环语句

语法结构

for循环主要用于把某些代码重复若干次,通常跟计数有关。其语句结构如下

for(初始化变量;条件表达式;操作表达式){

//循环体

}

流程控制

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

代码示范

	for (var i=1;i<p>双层for循环(循环嵌套)</p><p>循环嵌套是指在一个循环语句里再定义一个循环语句的语法结构,例如在for循环里再嵌套一个for循环,这样的for循环语句我们称之为双层for循环</p>
登入後複製
  • 我们把里面的循环称之为内层循环,外面的 称之为外层循环

  • 外层循环循环一次,内层循环从头到尾执行一遍

代码示范

	//低级:5行5列
	var str='';
			for  (var i=0;i<p>for循环小结</p>
登入後複製
  • for循环可以重复执行某些重复的代码
  • for循环可以超重复执行不同的代码,因为我们有计数器
  • for循环可以重复执行某些操作,比如算术运算加法操作
  • 双层for循环:外层循环循环一次,内层循环从头到尾执行一遍
  • for循环的循环条件是和数字直接相关的循环

while循环

while语句可以在条件表达式为真的前提下,循环执行指定的一段代码,直到表达式不满足条件时结束循环

while语句的语法结构

while(条件表达式){

//循环体语句;

}

执行思路:

  • 先执行条件表达式,如果条件为true,则执行循环体代码,反之,则退出循环,执行后面的代码

  • 执行循环体代码

  • 循环体代码执行完毕后,程序会继续判断执行条件表达式,如果条件还是为true则继续执行循环体,直到循环条件为false时,整个循环体过程才会结束

流程控制图如下

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

代码示范

			var num=1; //初始化变量
			while(num<p>注意:</p>
登入後複製
  • while里面也有操作表示式, 完成计数器的更新,防止死循环(我没加操作表达式,去运行代码结果谷歌浏览器界面黑了)

  • 里面应该也有计数器初始化变量

  • while循环在某种程度上可以与for循环等价,只需要把while里面初始化变量;条件表达式;操作表达式;放到for循环里就可以了

代码示范

			//打印人的一生,从1岁到120岁
 			var age = 1;
			while (age <p>do ……while循环</p><p>do……while 语句其实就是while语句的一个变种,该循环会先执行一次代码块,然后对条件表达式进行判断,如果条件为真,就会重复执行循环体,否则退出循环</p><p>do……while语句的语法结构如下</p><blockquote>
<p>do {<!-- --></p>
<p>//循环体代码- 条件表达式为true时重复执行循环体代码</p>
<p>}</p>
</blockquote><p>执行思路:</p>
登入後複製
  • 先执行一次循环体代码

  • 再执行条件表达式,如果结果为true,则继续执行循环体代码,如果为false,则退出循环,继续执行后面的代码

注意:先执行循环体语句,再判断,我们就会发现do……while循环语句至少会执行一次循环体。

流程控制

完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

代码示范

			//打印人的一生,从1岁到120岁
			var age = 1;
			do {
				console.log('这个人今年' + age + '岁了');
				age++;
			} while (age <p>循环小结</p>
登入後複製
  • JS中循环有for,while,do……while
  • 三种循环很多情况下都可以相互交替使用
  • 如果是用来计次数,跟数字有关的,三者使用基本相同,更推荐使用for
  • while,do……while可以做更加复杂的判断条件,比for循环灵活一些
  • while和do…… while执行顺序不一样,while先判断后执行,do……while先执行一次,再判断执行
  • while和do…… while执行次数不一样,do……while至少会执行一次循环体,而while可能一次也不执行
  • 重点学习for循环语句,因为它写法更简洁

continue 和break

continue关键字用于立即跳出本次循环,继续下一次循环(本次循环体中continue之后的代码就会少执行一次)。

如:吃5个包子,第三个有虫子,就扔掉第三个,继续吃第四个第五个包子

代码示范

		for (var i = 1; i <p>break关键字</p><p>break关键字用于立即跳出整个循环(循环结束)</p><p>如:吃五个包子,吃到第三个又发现了一条虫,就没胃口吃了。</p><p>代码示范</p><pre class="brush:php;toolbar:false">			for (var i = 1; i <h3><strong>命名规范及其语法</strong></h3><p>标识符命名规范</p>
登入後複製
  • 变量,函数名必须有意义
  • 变量的名称一般用名词
  • 函数的名称一般用动词

单行注释规范

			for (var i = 1; i <p>操作符规范</p><pre class="brush:php;toolbar:false">//操作符的左右两侧各保留一个空格
	for (var i = 1; i <p>【相关推荐:<a href="https://www.php.cn/course/list/17.html" target="_blank" textvalue="javascript视频教程">javascript视频教程</a>、<a href="https://www.php.cn/course/list/1.html" target="_blank">web前端</a>】</p>
登入後複製

以上是完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:csdn.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!