流程:就是程序代码的执行顺序

流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行

1.顺序结构(按照书写顺序来执行,是程序中最基本的流程结构)

2.选择结构(分支结构、条件结构):根据给定的条件有选择的执行形相应的语句

if else

1.单路分支

*.条件可以是表达式也可以是任何的数据类型

*.大括号会把他里面的代码当作一个整体来运行,如果只有一条语句,可以省略大括号

if(1<2)alert(1);
if (条件){
//只有当条件为 true 时执行的代码
}

2.双路分支

if (条件){
//当条件为 true 时执行的代码
}else{
//当条件不为 true 时执行的代码
}

3.多路分支

if (条件 1){
//当条件 1 为 true 时执行的代码
}else if (条件 2){
//当条件 2 为 true 时执行的代码
}else{
//当条件 1 和 条件 2 都不为 true 时执行的代码
}

4.嵌套分支

if(1<2){
if(){
}else{
}
}else{
}

switch

switch(n){
case 1:
//执行代码块 1
break;
case 2:
//执行代码块 2
break;
default:
//n 与 case 1 和 case 2 不同时执行的代码
}

*************************************************
1.当判断某种范围的时候最好用if语句,当判断单个值时候用switch
2.条件满足的情况不可以重复,会发生不可预期的错误。
*************************************************

3.循环结构(在给定的条件满足下,反复执行同一段代码)

for(循环代码块一定的次数)

for (语句 1; 语句 2; 语句 3){
//被执行的代码块
}
//语句 1 在循环(代码块)开始前执行
//语句 2 定义运行循环(代码块)的条件
//语句 3 在循环(代码块)已被执行之后执行

while(循环会在指定条件为真时循环执行代码块)

while (条件){
//需要执行的代码
}
// 99乘法表
var a=1;
while(a<=9){
var b=1;
while(b<=a){
document.write(b+'*'+a+'='+a*b+'&nbsp;&nbsp;&nbsp;');
b++;
}
document.write('<br>');
a++;
}

do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环

do{
//需要执行的代码
}
while (条件);

#######################################
do{}while 和 while的区别
1.while:当条件满足时,执行循环体,当不满足时退出循环;先判断,后循环
2.do{}while:先执行一次,再进行条件判断;条件满足再循环,不满足退出循环

for 和 while 的区别
1.for:一般用于循环指定的次数(知道循环次数)
2.while是根据条件真假来循环,当真时进行循环,假退出循环(未知循环次数)
#######################################

4.流程控制--跳转语句(在循环控制语句中,当 满足指定条件 的时候,退出循环 或者是退出 当前 循环的语句。)

1.break;跳出并且终止循环,如果后面有代码,则继续往下执行。

2.continue;跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续循环

*******
break:

A.switch循环指的是当满足某个条件后,退出switch语句

B.用在循环语句当中,跳出并且终止循环,如果后面有代码,则继续往下执行

continue:

A.只能用在循环语句当中, 跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续循环

B.最好用适当的语句代替continue(continue效率低)

//例子:
for(var i=1;i<5;i++){
if(i!=3){
document.write(i);
};
}
//等价于
for(var i=1;i<5;i++){
if(i==3){continue;};
document.write(i);
}

5、标签语句(用来退出多层循环)
break out;
continue out;

注意:标签名只可以作用于break 或continue

ab:
for(var i=1;i<5;i++){
document.write(i+'<br>');
for(var b=1;b<6;b++){
if(i==3){continue ab;};
document.write('b'+b+'<br>');
}
}

6、with(){}用于设置代码在对象中的作用域。
*************************************************
不建议使用。
with(document){
write(1);
write(2);
write(3);
write(4);
write(5);
}
结果 12345
*************************************************

javascript笔记整理(流程控制)的更多相关文章

  1. JavaScript运算符与流程控制

    JavaScript运算符与流程控制 运算符 赋值运算符 使用=进行变量或常量的赋值. <script> ​ let username = "YunYa"; ​ < ...

  2. 《Node.js In Action》笔记之流程控制

    转向Javascript后,开始学习了node.js,选择的第一本书是<Node.js in Action> 将近一个月时间,断断续续看完,选几个点做下笔记 1.实现串行化流程控制 var ...

  3. Javascript初识之流程控制、函数和内置对象

    一.JS流程控制 1. 1.if else var age = 19; if (age > 18){ console.log("成年了"); }else { console. ...

  4. JavaScript之if流程控制演练,if写在区间内怎么解决

    什么是编程?通俗意见上来讲,就是把人的思维与步骤通过代码的形式书写展示出来,JavaScript的流程控制包含条件判断if,switch选择,循环for while:if(表达式 条件)=>真{ ...

  5. 【原】Java学习笔记005 - 流程控制

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 程序的流程控制(流 ...

  6. Python学习笔记 - day4 - 流程控制

    Python流程控制 Python中的流程控制主要包含两部分:条件判断和循环. Python的缩进和语法 为什么要在这里说缩进和语法,是因为将要学习的条件判断和分支将会涉及到多行代码,在java.c等 ...

  7. PL/SQL笔记(1)-流程控制,循环,异常,块

    流程控制 1.If,then,else,elsif(不是elseif) ' then null; endif; 2.Case 简单case表达式: 搜索型Case表达式: 3.goto语句 begin ...

  8. C#学习笔记_04_流程控制

    04_流程控制 程序的执行结构: 顺序结构 分支结构 循环结构 可以通过某些特定的控制语句来控制代码的执行结构 分支流程控制 if else 基本语法 可以只有if没有else,但是不能没有if只有e ...

  9. PYTHON 学习笔记2 流程控制工具以及函数定义、匿名函数

    前言 在上一节的学习中.已经介绍了几种基本类型.包括字符串的定义,以及字符串中索引.切片.字符串拼接的使用方法.以及基本的整形数据运算.一些之前都没有了解过的运算符.比如 ** 乘方 //整数除法等. ...

随机推荐

  1. ASP.NET jQuery 随笔 在TextBox里面阻止复制、剪切和粘贴事件

    当用户要输入一些密码.信用卡信息和银行账号等敏感信息,用户更希望手工通过键盘敲入数据,而好过通过剪贴板复制粘贴. 我们先来看下实现后的效果: <%@ Page Language="C# ...

  2. java学习之tcp与udp的实现

    package com.gh.socket; import java.io.BufferedReader; import java.io.IOException; import java.io.Inp ...

  3. poj 1503 Integer Inquiry (高精度运算)

    题目链接:http://poj.org/problem?id=1503 思路分析: 基本的高精度问题,使用字符数组存储然后处理即可. 代码如下: #include <iostream> # ...

  4. levelDB跳表实现

    跳表的原理就是利用随机性建立索引,加速搜索,并且简化代码实现难度.具体的跳表原理不再赘述,主要是看了levelDB有一些实现细节的东西,凸显自己写的实现不足之处. 去除冗余的key template& ...

  5. Android:AysncTask异步加载

    以下是链接: http://blog.csdn.net/abc5382334/article/details/17097633 http://keeponmoving.iteye.com/blog/1 ...

  6. PHPer的等级划分

    PHPer的等级划分 前一段时间刚刚完成PHP的培训,然后想知道自己目前的水平(或者说等级),并且应该在哪些方面进行提高,所以在网上查了一下相关介绍.其中有一篇介绍讲的挺清楚的,至少目前的我还是很认同 ...

  7. PHP学习笔记4-类/命名空间/成员方法/类方法

    命名空间 namespace   类 class创建文件Hello.php,namespace是jikexueyuan: <?php /** * Created by PhpStorm. * U ...

  8. (Problem 14)Longest Collatz sequence

    The following iterative sequence is defined for the set of positive integers: n n/2 (n is even) n 3n ...

  9. Chapter 13 建造者模式

    建造者模式又叫生成器模式:将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象. 代码: package xiao; import java.util. ...

  10. 由基于qml,c++的串口调试工具浅谈qml与c++混合编程

    最近在做一个基于sim900 的串口通信工具,基于qml和c++来实现. 首先,对于串口,qt有自带的QSerialPort,可以实现同步,和异步通信,qt creator也有自带的例子,本例子是从其 ...