1. 条件语句

1.1 概述

生活中,打开网站看电影:1 免费电影 2 Vip 电影。
播放 Vip 电影时,首先会判断是不是 Vip:

  • 如果是 Vip,就可以看完整电影;
  • 如果不是 Vip,只能试看5分钟。

条件语句:根据判断条件的结果(真或假),来执行不同的代码,从而实现不同功能。
条件执行时,首先判断条件是否满足。

  • 如果 条件满足,就做某件事情(情况1)
  • 如果 条件不满足,就做另外一件事情(情况2)

条件语句,也叫分支语句,不同的情况就是不同的分支。

1.2 if语句

在 TypeScript 中 if 语句就是实现条件判断的。

if 语句的语法:

if (判断条件) {条件满足时,要做的事情
}

解释:

  • 判断条件:布尔类型(true 或 false)。
  • 如果 判断条件 为真,就执行 要做的事情;
  • 否则,如果判断条件为假,则不执行花括号中的代码。

补充概念说明:语句,是一个完整的句子,用来使某件事情发生(或实现某个功能)。

1.3 else语句

在 TypeScript 中 else 语句必须配合 if 语句来使用。

else 语句表示:条件不满足,要做的事情(if 语句的对立面)。

else 语句的语法:

if (判断条件) {条件满足时,要做的事情
} else {条件不满足,要做的事情
}

解释:否则,如果 判断条件 为假,就执行 条件不满足时要做的事情。

2. 三元运算符

三元运算符的作用与 if…else 语句类似。

作用:根据判断条件的真假,得到不同的结果。

语法:

结果 = 判断条件 ? 值1 : 值2

解释:

  • 如果判断条件为真,结果为 值1;
  • 否则,如果判断条件为假,结果为 值2。

注意:得到结果的类型由值1和值2的类型决定(值1和值2的类型相同)。

3. 循环语句

3.1 概述

生活中,经常重复做某件事情,比如:

  1. 上学时作业写 3 遍。
  2. 女朋友说:爱我就对我说 100 遍“我爱你”。

需求:在 TS 中,打印 3 遍以下内容:

‘北冥有鱼,其名为鲲。鲲之大,一锅装不下’

在 TypeScript 中,要实现重复做某件事情,就需要用到循环语句,来减少重复劳动提升效率。

3.2 for循环

在 TypeScript 中,for 循环就是实现重复做某件事情的循环语句。
注意:for 循环是 TS 基础知识的重难点,语法比较复杂。

上学时作业写 3 遍。先准备,写作业的遍数,默认为:1。

  • 第 1 遍:先判断遍数是否 <= 3(是);写作业;遍数 + 1(准备开始第2遍)。
  • 第 2 遍:先判断遍数是否 <= 3(是);写作业;遍数 + 1(准备开始第3遍)。
  • 第 3 遍:先判断遍数是否 <= 3(是);写作业;遍数 + 1(准备开始第4遍)。
  • 第 4 遍:先判断遍数是否 <= 3(否);结束写作业。

for 循环的组成:

  1. 初始化语句:声明计数器变量用来记录循环次数(执行一次)。
  2. 判断条件:判断循环次数是否达到目标次数。
  3. 计数器更新:完成一次循环让计数器数量加1。
  4. 循环体:循环的代码,也就是要重复做的事情。

3.3 for循环的基本使用

语法:

for (初始化语句; 判断条件; 计数器更新) {循环体
}

解释:

  • 初始化语句:声明计数器变量,记录循环次数。
  • 判断条件:判断循环次数是否达到目标次数。
  • 计数器更新:计数器数量加1。
  • 循环体:重复执行的代码,也就是要重复做的事情。
// 作业写 3 遍:
for (let i: number = 1; i <= 3; i++) {console.log('北冥有鱼,其名为鲲。鲲之大,一锅装不下')
}

3.4 for循环的执行过程

意义:for 循环的语法比较复杂,搞明白代码执行顺序,才是真正理解并掌握了 for 循环。

  1. 初始化语句:只会执行一次。
  2. 重复执行的部分:判断条件、循环的代码、计数器更新(绿色框框)。

  • 说明:红色表示当前执行的代码。

    for (let i: number = 1; i <= 3; i++) {console.log('...一锅装不下')
    }
    
  • 执行过程记录:

    // 初始化计数器(i = 1) -- 只执行一次
    // 第 1 次: a 判断条件(1 <= 3)b 循环的代码->打印 c 计数器++(i变为2);
    // 第 2 次: a 判断条件(2 <= 3)b 循环的代码->打印 c 计数器++(i变为3);
    // 第 3 次: a 判断条件(3 <= 3)b 循环的代码->打印 c 计数器++(i变为4);
    // 第 4 次: a 判断条件(4 <= 3),条件不满足,结束循环。
    

3.5 break和continue

break 和 continue 常用在循环语句中,用来改变循环的执行过程。

for 循环执行的特点是:连续且不间断。

例子:买了 5 个包子,吃包子。

for (let i: number = 1; i <= 5; i++) {console.log('正在吃第' + i + '个包子')
}

break 能够让循环提前结束(终止循环)。

例子:买了 5 个包子,吃包子。
场景:吃到(没吃)第3个饱了,剩下的就不吃了。

for (let i: number = 1; i <= 5; i++) {if (i === 3) {break}console.log('正在吃第' + i + '个包子')
}

continue 能够让循环间断执行(跳过本次循环,继续下一次循环)。

例子:买了 5 个包子,吃包子。

场景:吃到第3个有虫子,这个就不再吃了,但没吃饱,继续吃下一个。

for (let i: number = 1; i <= 5; i++) {if (i === 3) {continue}console.log('正在吃第' + i + '个包子')
}

4. 断点调试

疑问:如何知道 for 循环执行过程的呢? 断点调试

借助断点调试,观察代码的执行过程。

断点(Breakpoint):程序暂停的位置(调试时,程序运行到此处,就会暂停)。

TypeScript:语句相关推荐

  1. typeScript(二)

    变量和数据类型 一.什么是变量 通俗的讲:变量,是用来存储数据的容器,并且是可以变化的. 保温杯里泡枸杞 ,变量里面存数据. 枸杞难挡岁月催,杯里再换点当归:枸杞 -> 当归. 二.变量的使用 ...

  2. SAP Spartacus CurrentProductService返回的null对象

    使用如下的代码监控getProduct可能返回的null值: import { Component, OnInit } from '@angular/core'; import { ActiveCar ...

  3. 【TypeScript系列教程09】条件语句的使用

    目录 TypeScript 条件语句 条件语句 if 语句 语法 实例 if-else 语句 语法 实例 if-else if-.else 语句

  4. 【TypeScript】条件语句

    条件语句用于基于不同的条件来执行不同的动作. TypeScript 条件语句是通过一条或多条语句的执行结果(True 或 False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: ...

  5. TypeScript 4.3 beta 版本正式发布:新增import语句补全,对模板字符串类型进行改进...

    作者 | TypeScript 团队 译者 | 王强 策划 | 田晓旭 来源|前端之巅 今天,我们很高兴为大家带来了 TypeScript 4.3 的 Beta 版本! 要开始使用这个 Beta 版本 ...

  6. 【TypeScript系列教程10】循环语句的使用

    目录 TypeScript 循环 for 循环 语法 实例 for-in 循环 语法 实例 for-of .forEach.every 和 some 循环

  7. 【TypeScript入门】TypeScript入门篇——条件语句

    条件语句是用来判断给定的条件是否满足(表达式值是否为0),并根据判断的结果(真或假)决定执行的语句,选择结构就是用条件语句来实现的.条件语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立, ...

  8. TypeScript 从听说到入门(上篇)

    我为什么会这样念念又不忘 / 你用什么牌的箭刺穿我心脏 我也久经沙场 / 戎马生涯 / 依然 / 被一箭刺伤 --李荣浩<念念又不忘> 接下来我会分上.下两篇文章介绍 TypeScript ...

  9. 简单探讨TypeScript 枚举类型

    这篇文章主要介绍了TypeScript 枚举类型,TypeScript 在 ES 原有类型基础上加入枚举类型,使得在 TypeScript 中也可以给一组数值赋予名字,这样对开发者比较友好,可以理解枚 ...

  10. 你真的懂switch吗?聊聊switch语句中的块级作用域

      最近在代码中不小心不规范的,在switch里面定义了块级变量,导致页面在某些浏览器中出错,本文讨论以下switch语句中的块级作用域. switch语句中的块级作用域 switch语句中的块级作用 ...

最新文章

  1. FPGA/IC Technology Exchange
  2. C#设计模式(23种设计模式)
  3. python中的模块和包
  4. Eclipse出现ContextLoaderListener not find
  5. 方法的反射---反射学习笔记(二)
  6. Can not load “libqxcb.so”
  7. idea中每次push/pull都需要输入账号密码
  8. 331页!2021年的精华尽在这本数据库技术年刊
  9. SQL Server 将在下一个版本实现内存中运行
  10. [转载] Python round四舍五入精度缺失的解决
  11. linux mono apache2,Ubuntu 9.04 下使用Apache2,mod_mono 配置asp.net 2.0 运行环境
  12. Spring事务管理---上
  13. 小程序-实现列表- 搜索功能的实现(6)
  14. ffmpeg 多张图片合成h264编码格式的视频 按照指定时间截取 并添加 acc编码格式音乐 IOS可播放
  15. 计算机开机键英语字母,电脑开机黑屏显示英文字母
  16. Unity3d基础教程7-灯光(灯光阴影参数设置及lightmapping制作)
  17. #define定义函数
  18. 厘米换算英尺英寸 (15 分)如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是?
  19. 直接看见宇宙黑洞不是梦?最新天文研究表示有重大成果
  20. 网页中无法添加微信好友怎么办?如何一键唤起微信添加好友?

热门文章

  1. 64. 雇员管理系统
  2. 9. jQuery 停止动画
  3. 第009讲 初识css 类选择器 id选择器 html选择器
  4. php中几个操作函数参数的函数func_num_args() func_get_args() func_get_arg($i)php
  5. jQuery length和size()区别总结如下:
  6. Docker最全教程之使用Tencent Hub来完成CI(九)
  7. 基于Docker布署伪分布式hadoop环境(一)
  8. 【数据库】SQLITE3 加密3
  9. SpringBoot+JSON+AJAX+ECharts+Fiddler实现前后端分离开发可视化(进阶篇)
  10. 31. 了解各种与排序有关的选择