JavaScript--总结二(流程控制+调试)
表达式和语句
表达式------
一个表达式可以产生一个值,有可能式运算,函数调用,有可能是字面量。表达式可以放在任何需要值的地方
语句-----
语句可以理解为一个行为,循环语句和判断语句就是典型的语句,一个程序有很多个语句组成,一般情况下;分割一个一个的语句
流程控制(代码的执行过程)
三种方式:
- 1.顺序结构---从上到下,从左到右执行的顺序
2.分支结构---if语句,if-else语句,if-else if-else if...语句,switch-case语句,三元表达式语句
if语句
语法结构
if (/* 条件表达式 */) {
// 执行语句
}
if (/* 条件表达式 */){
// 成立执行语句
} else {
// 否则执行语句
}
if (/* 条件1 */){
// 成立执行语句
} else if (/* 条件2 */){
// 成立执行语句
} else if (/* 条件3 */){
// 成立执行语句
} else {
// 最后默认执行语句
}
三元运算符
表达式1 ? 表达式2 : 表达式3
是对if……else语句的一种简化写法
switch语句
break可以省略,如果省略,代码会继续执行下一个case
switch语句在比较值时使用的是全等操作符,因此不会发生类型转换(例如:字符串“10”不等于10)
分支语句总结###
1.if语句:一个分支
2.if-else语句:俩个分支,最终只执行一个
3.if-else if-else if-else if...语句:多个分支,最终只执行一个
4.switch-case语句:多分支语句,最终也会一个(必须要有break的情况下)
5.三元表达式:和if-else语句一样
一般对范围的判断时--使用if-else if....
一般对具体的值的判断---使用switch-case语句
布尔类型的隐式转换
流程控制语句会把后面的值隐式转换成布尔类型
转换为true 非空字符串 非0数字 true 任何对象
转换成false 空字符串 0 false null undefinedvar message;
// 会自动把message转换成false
if (message) {
// todo...
}
3.循环结构---while循环,do-while循环,for循环,for-in循环
循环:一件事不断的或者重复的执行
循环需要有结束的条件,循环还应该有计时器(记录循环的次数)
while循环
语法:
计时器
var 变量=0;
while(循环的条件){
循环体;
计数器++;
}
执行过程:先判断条件是否成立,条件结果是true还是false,如果是false,那么循环的代码(while大括号中的代码全部不执行),如果为true,那么执行while里的代码循环体,再执行计时器,再次判断...直到不满足条件,退出结束循环体。
do...while循环
语法:
var i=0;----计时器
do{
循环体
计时器++
}while(条件);
执行过程:先执行一次循环体,然后判断条件是否成立,不成立,则跳出循环;成立则执行循环体,然后再判断条件是否成立,成立则继续循环,直到不满足条件则跳出
while和do-while区分特点
while:先判断后循环,有可能一次循环体都不执行
do-while:先循环后判断,至少要执行一次循环体
for循环
while和do...while一般用来解决无法确认次数的循环。for循环一般在循环次数确定的时候比较方便
语法:
// for循环的表达式之间用的是;号分隔的,千万不要写成,
for (初始化表达式1; 判断表达式2; 自增表达式3) {
// 循环体4
}
执行顺序:1243--243--243(直到循环条件变成false)
1--初始化表达式
2--判断表达式
3--自增表达式
4--循环体
continue和break
break:立即跳出整个循环,即循环结束,开始执行循环后面的内容(直接跳到大括号)
continue:立即跳出当前循环,继续下一次循环(跳到i++的地方)
调试
过去调试JS的方式
alert();
console.log();
断点调试
点调试是指自己在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。
JavaScript--总结二(流程控制+调试)的更多相关文章
- JavaScript运算符与流程控制
JavaScript运算符与流程控制 运算符 赋值运算符 使用=进行变量或常量的赋值. <script> let username = "YunYa"; < ...
- JavaScript学习笔记——流程控制
javascript流程控制流程:就是程序代码的执行顺序.流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行. 一.顺序结构 按照书写顺序来执行,是程序中最基本的流程结构. 二.选择结构(分 ...
- Javascript初识之流程控制、函数和内置对象
一.JS流程控制 1. 1.if else var age = 19; if (age > 18){ console.log("成年了"); }else { console. ...
- SpringMVC(二)——流程控制
SpringMVC主要就是用来做流程控制的,这篇博客总结一下如何在流程控制添加Interceptor(拦截器),如何将进行流程Mapping映射解析,如何编写Controller(控制器). 一,首先 ...
- JavaScript之if流程控制演练,if写在区间内怎么解决
什么是编程?通俗意见上来讲,就是把人的思维与步骤通过代码的形式书写展示出来,JavaScript的流程控制包含条件判断if,switch选择,循环for while:if(表达式 条件)=>真{ ...
- JavaScript 运算,流程控制和循环
算数运算符 算术运算符 描叙 运算符 实例 加 + 10 + 20 = 30 减 - 10 – 20 = -10 乘 * 10 * 20 = 600 除 / 10 / 20 = 0.5 取余数 % 返 ...
- JavaScript学习笔记(9)——JavaScript语法之流程控制
javascript的流程控制语句与大部分类c语言一致.大致如下: 一.if if...else if...else if....else if....else..... 二.switch(变量){ ...
- Postman高级应用——流程控制、调试、公共函数、外部数据文件
postman客户端下载地址:https://www.getpostman.com/apps 目录 流程控制 调试 公共函数 外部数据文件 流程控制 流程控制简言之就是设置接口的执行顺序,流程控制只有 ...
- Dart:3.Dart运算符、流程控制
一 . 运算符 以下列出 Dart 的运算符,从高到低按照优先级排列: 描述 运算符 一元运算符(后置) expr++ expr-- () [] . ?. 一元运算符(前置) -expr !expr ...
随机推荐
- 老猿学5G扫盲贴:NEF、NRF、AF、UPF以及DN的功能
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 NEF:Network Exposure Function ,网络开放 ...
- PyQt学习随笔:Qt中Model/View中的怎么构造View匹配的Model
老猿Python博文目录 老猿Python博客地址 在<PyQt学习随笔:Qt中Model/View相关的主要类及继承关系>介绍了Model/View架构的主要类,在实际使用时,view相 ...
- PyQt(Python+Qt)学习随笔:窗口部件大小策略sizePolicy与SizeConstraint布局大小约束的关系
在<PyQt(Python+Qt)学习随笔:Qt Designer中部件的三个属性sizeHint缺省尺寸.minimumSizeHint建议最小尺寸和minimumSize最小尺寸>. ...
- 百度前端技术学院-基础-day20-21
第二十到第二十一天:让你和页面对话 task1 控制元素的显示及隐藏 实现以下功能: 当用户选择了 School 的单选框时,显示 School 的下拉选项,隐藏 Company 的下拉选项 当用户选 ...
- Panda 交易所快报 央行数字货币测试进入C端流量入口
近年来,央行数字货币的研发进展备受市场关注.近期,Panda 交易所注意,央行数字货币研究所与滴滴出行已达成战略合作协议,共同研究探索数字人民币在智慧出行领域的场景创新和应用.此外,Panda 交易所 ...
- 题解-Magic Ship
Magic Ship 你在 \((x_1,y_1)\),要到点 \((x_2,y_2)\).风向周期为 \(n\),一个字符串 \(s\{n\}\) 表示风向(每轮上下左右),每轮你都会被风向吹走一格 ...
- yum install nginx-没有可用软件包 nginx。
1. 错误提示 Centos 7下安装nginx,使用yum install nginx,报错提示没有可用的软件包.具体错误提示如下: 已加载插件:fastestmirror, product-id, ...
- [日常摸鱼]bzoj1218[HNOI2003]激光炸弹-二维前缀
题意:二维网格一些格子有权值,求用边长为$r$的正方形能覆盖到格子权值和的最大值,格子大小$ \leq 5000$ 非常裸的二维前缀,然而 题目下标从0开始! QAQ 要是比赛就要爆零啦- #incl ...
- 利用Java Flight Recorder(JFR)诊断timing及内存问题
Java Flight Recorder(JFR), 以下简称JFR,请注意这个只有Oracle JDK 1.7(7u40)或以上版本才有, OpenJDK木有这东西. 启用: Java命令行启动参数 ...
- VSCode---REST Client接口测试辅助工具
我们一般都会用 PostMan 来完成接口测试的工作,因为用起来十分简单快捷,但是一直以来我也在寻找更好的方案,一个不用切换窗口多开一个 app 的方案 -- 终于在使用 VSCode 一段时版本间, ...