JavaScript 流程控制与函数基础详解

作者:异步漫步

时间:2026-10-22

浏览:652

本文详细介绍 JavaScript 的基础语法与流程控制机制。内容涵盖代码书写规范、多种输出方式(console.log、alert 等)、条件判断语句(if-else、switch-case)以及各类循环结构(for、while、do-while)。此外,深入解析函数的声明、调用、参数传递、返回值及递归与回调概念,帮助开发者掌握 JS 核心控制逻辑。

文章目录

JavaScript 基础语法与输出

第三部分:流程控制语句

JavaScript 代码的书写位置

JavaScript 代码应当嵌入在 <script type="text/javascript"></script> 标签对内部。

或者通过 <script src="JavaScript代码路径"></script> 的方式作为外部资源进行引用。

在 JavaScript 中,建议每句代码末尾使用分号作为结束符。

输出语句

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

该语句用于在浏览器控制台中打印信息,括号内的内容即为输出的数据。

在程序调试过程中,此语句被频繁使用。

2、弹出框输出:

alert();

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

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)。

循环控制语句

break 与 continue 语句

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;若为 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就是一个回调函数

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章