1.if条件
if (条件) {
//语句;
}
2.if-else条件
if (条件) {
//语句1;
} else {
//语句2;
}
3.if-else-if条件
if (条件1) {
//语句1;
} else if (条件2) {
//语句2;
} else {
//语句3;
}
4.switch条件
switch
语句将一个表达式的值尝试去按顺序匹配一个 case
条件。如果匹配成功,则执行这个匹配的 case
条件内的语句。如果 case
条件内的语句有 break
关键字,则跳出 switch
语句。如果没有 break
关键字,则继续匹配下一个 case
条件。
switch (表达式) {
case 条件1: {
//语句1;
[break;]
}
case 条件2: {
//语句2;
[break;]
}
case 条件N: {
//语句N;
[break;]
}
default: {
//语句;
}
}
5.while循环
while (条件) {
//语句;
}
6.do-while循环
do {
//语句;
}
while (条件);
7.for循环
for (初始化表达式;条件表达式;循环后表达式) {
//语句;
}
//示例
let count = 10;
for (let i = 0; i < count; i++) {
console.log(i);
}
//输出
0 1 2 3 4 5 6 7 8 9
8.for-in循环
用于迭代对象(plain object)中的非符号键属性的值。
for (let 变量名 in 对象名) {
//语句;
}
for (const 常量名 in 对象名) {
//语句;
}
//示例
//每次循环,都会将window对象的属性的值赋给propName常量,直至循环结束
for (const propName in window) {
document.write(propName);
}
9.for-of循环
用于迭代可迭代对象中的元素。
for (property of expression) {
statement;
}
//示例
for (const el of [2,4,6,8]) {
document.write(el);
}
//输出
2 4 6 8
10.for-await-of循环
用于遍历支持期约(promise)的异步可迭代对象中的元素。
//从异步可迭代流中读取数据块并将其打印出来
async function printStrean(stream) {
for await (let chunk of stream) {
console.log(chunk);
}
}
11.label跳转
label
语句用于给语句加标签。
label : 语句
//示例
//start是标签,可以通过break或continue语句跳转到此start标签的语句
start: for (let i = 0; i < count; i++) {
console.log(i);
}
11.break跳转
break
语句用于完全终止循环。
break [label];
12.continue跳转
continue
语句用于忽略本次循环的剩余语句,接着开始下一次循环,并不会完全终止循环。
continue [label];
13.return跳转
return [表达式];
function myMethod() {
return 6;
}
//返回值为6
myMethod();
return
语句会立即终止函数的执行,并将表达式的值返回给函数调用者。
如果一个函数体的 return
关键字后没有表达式 或者 根本没有 return
语句,则会返回 undefined
值给函数调用者。
function myMethod() {
return;
}
//返回值为undefined
myMethod();
function myMethod() {
}
//返回值为undefined
myMethod();
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/4582.html