搜尋
首頁web前端js教程完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)

本篇文章為大家帶來了關於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="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/067/466dcbcb1041786ee9a269be9261ee7c-1.png?x-oss-process=image/resize,p_40" class="lazy" alt="完全掌握javascript流程控制結構(順序結構、分支結構與循環結構)"></p>if的加強版if else語句(雙分支語句)<h4 id="strong-語法結構-strong"><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 id="strong-命名规范及其语法-strong"><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。如有侵權,請聯絡admin@php.cn刪除
超越瀏覽器:現實世界中的JavaScript超越瀏覽器:現實世界中的JavaScriptApr 12, 2025 am 12:06 AM

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。

使用Next.js(後端集成)構建多租戶SaaS應用程序使用Next.js(後端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:23 AM

我使用您的日常技術工具構建了功能性的多租戶SaaS應用程序(一個Edtech應用程序),您可以做同樣的事情。 首先,什麼是多租戶SaaS應用程序? 多租戶SaaS應用程序可讓您從唱歌中為多個客戶提供服務

如何使用Next.js(前端集成)構建多租戶SaaS應用程序如何使用Next.js(前端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:22 AM

本文展示了與許可證確保的後端的前端集成,並使用Next.js構建功能性Edtech SaaS應用程序。 前端獲取用戶權限以控制UI的可見性並確保API要求遵守角色庫

JavaScript:探索網絡語言的多功能性JavaScript:探索網絡語言的多功能性Apr 11, 2025 am 12:01 AM

JavaScript是現代Web開發的核心語言,因其多樣性和靈活性而廣泛應用。 1)前端開發:通過DOM操作和現代框架(如React、Vue.js、Angular)構建動態網頁和單頁面應用。 2)服務器端開發:Node.js利用非阻塞I/O模型處理高並發和實時應用。 3)移動和桌面應用開發:通過ReactNative和Electron實現跨平台開發,提高開發效率。

JavaScript的演變:當前的趨勢和未來前景JavaScript的演變:當前的趨勢和未來前景Apr 10, 2025 am 09:33 AM

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

神秘的JavaScript:它的作用以及為什麼重要神秘的JavaScript:它的作用以及為什麼重要Apr 09, 2025 am 12:07 AM

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python還是JavaScript更好?Python還是JavaScript更好?Apr 06, 2025 am 12:14 AM

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。1.Python以简洁语法和丰富库生态著称,适用于数据分析和Web开发。2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。

如何安裝JavaScript?如何安裝JavaScript?Apr 05, 2025 am 12:16 AM

JavaScript不需要安裝,因為它已內置於現代瀏覽器中。你只需文本編輯器和瀏覽器即可開始使用。 1)在瀏覽器環境中,通過標籤嵌入HTML文件中運行。 2)在Node.js環境中,下載並安裝Node.js後,通過命令行運行JavaScript文件。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具