首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
第 1 章 准备知识
1.1 前端技术简介
1.2 HTML入门
1.2.1 准备开发工具
1.2.2 HTML中的基础标签
1.3 CSS入门
1.3.1 CSS选择器入门
1.3.2 CSS样式入门
1.4 JavaScript入门
1.4.1 我们为什么需要JavaScript
1.4.2 JavaScript语法简介
1.4.3 从JavaScript到TypeScript
1.5 渐进式开发框架Vue
1.5.1 第一个Vue应用
1.5.2 范例:一个简单的用户登录页面
1.5.3 Vue 3的新特性
1.5.4 我们为什么要使用Vue框架
第 2 章 TypeScript基础
2.1 重新认识TypeScript
2.1.1 安装TypeScript
2.1.2 TypeScript语言版本的HelloWorld程序
2.1.3 使用高级IDE工具
2.2 TypeScript中的基本类型
2.2.1 布尔、数值与字符串
2.2.2 特殊的空值类型
2.2.3 数组与元组
2.3 TypeScript中有关类型的高级内容
2.3.1 枚举类型
2.3.2 枚举的编译原理
2.3.3 any、never与object类型
2.3.4 关于类型断言
2.4 函数的声明和定义
2.4.1 函数的类型
2.4.2 可选参数、默认参数和不定个数参数
2.4.3 函数的重载
第 3 章 TypeScript中的面向对象编程
3.1 理解与应用“类”
3.1.1 类的定义与继承
3.1.2 类的访问权限控制
3.1.3 只读属性与存取器
3.1.4 关于静态属性与抽象类
3.1.5 类的实现原理
3.2 接口的应用
3.2.1 接口的定义
3.2.2 使用接口约定函数和可索引类型
3.2.3 使用接口来约束类
3.2.4 接口的继承
3.3 TypeScript中的类型推断与高级类型
3.3.1 关于类型推断
3.3.2 联合类型与交叉类型
3.3.3 TypeScript的类型区分能力
3.3.4 字面量类型与类型别名
当前位置:
首页>>
技术小册>>
TypeScript和Vue从入门到精通(一)
小册名称:TypeScript和Vue从入门到精通(一)
### 2.2.1 布尔、数值与字符串 在TypeScript与Vue的结合使用中,掌握基础数据类型是构建复杂应用的基础。在这一节中,我们将深入探讨TypeScript中的三种基础且至关重要的数据类型:布尔类型(Boolean)、数值类型(Number)与字符串类型(String)。这些类型不仅是编程语言的基石,也是日常开发中频繁使用的元素。了解它们的特性、用法以及如何在Vue项目中有效地应用它们,将极大提升你的开发效率和代码质量。 #### 2.2.1.1 布尔类型(Boolean) 布尔类型是表示真值(true)或假值(false)的数据类型。在TypeScript(以及JavaScript)中,布尔类型用于条件判断、逻辑运算等场景。布尔值通常用于控制程序的流程,比如决定是否执行某个操作或选择哪个分支执行。 ##### 基本用法 - **字面量**:直接使用`true`或`false`作为布尔值。 - **逻辑运算符**:通过逻辑运算符(如`&&`、`||`、`!`)对布尔值或可转换为布尔值的表达式进行操作,得到新的布尔值。 - **条件表达式**:在`if`、`while`、`for`等控制结构中,根据布尔值决定是否执行特定代码块。 ##### TypeScript中的布尔类型 在TypeScript中,布尔类型与JavaScript完全一致,但TypeScript提供了更强的类型检查和错误提示功能。例如,你可以明确指定一个变量的类型为`boolean`,TypeScript编译器会在编译时检查该变量是否被赋予了有效的布尔值(`true`或`false`),或者是否通过逻辑运算、条件表达式等得到了布尔值。 ```typescript let isDone: boolean = false; if (isDone) { console.log("任务已完成"); } else { console.log("任务未完成"); } // 错误示例:TypeScript会报错,因为'string'类型不能赋值给'boolean'类型 // isDone = "未完成"; ``` #### 2.2.1.2 数值类型(Number) 数值类型是表示数字的数据类型。在TypeScript(和JavaScript)中,数值类型可以是整数或浮点数,并且支持科学计数法。数值类型用于执行数学计算、表示数据大小等。 ##### 基本用法 - **整数和浮点数**:直接书写数字即可,如`123`(整数)、`3.14`(浮点数)。 - **科学计数法**:使用`e`或`E`表示指数部分,如`1.23e3`等于`1230`。 - **算术运算符**:通过算术运算符(如`+`、`-`、`*`、`/`、`%`)对数值进行加减乘除和取模等操作。 ##### TypeScript中的数值类型 在TypeScript中,数值类型默认是`number`,它包括了所有JavaScript中的数值类型。TypeScript提供了类型注解来确保数值的精确性,同时也支持类型别名来定义更具体的数值类型,比如限制数值的范围。 ```typescript let age: number = 30; let price: number = 99.99; // 使用类型别名限制数值范围(TypeScript 3.7+ 引入的常量断言) type Age = number & { __brand: 'Age' }; const maxAge: Age = 120 as Age; // 使用类型断言 // 注意:实际中,TypeScript本身不直接支持数值范围的类型检查,这里仅为示意 ``` #### 2.2.1.3 字符串类型(String) 字符串类型是表示文本的数据类型。在TypeScript(和JavaScript)中,字符串是不可变的,意味着一旦字符串被创建,其值就不能被改变(但可以通过重新赋值来覆盖原值)。字符串用于存储文本信息,如用户输入、文件名、URL等。 ##### 基本用法 - **字面量**:使用单引号(`'`)、双引号(`"`)或模板字符串(\`\`\`)定义字符串。 - **字符串连接**:使用加号(`+`)连接多个字符串。 - **字符串方法**:字符串提供了丰富的内置方法,如`length`属性获取长度、`indexOf`查找子字符串位置、`slice`、`substring`和`substr`截取子字符串、`split`分割字符串等。 ##### TypeScript中的字符串类型 在TypeScript中,字符串类型被简单地标记为`string`。虽然TypeScript没有直接提供对字符串内容的类型检查(如检查字符串是否为特定的电子邮件格式),但你可以通过正则表达式或自定义类型守卫来间接实现这种需求。 ```typescript let name: string = "Alice"; let greeting: string = `Hello, ${name}!`; // 使用正则表达式检查字符串是否为电子邮件 function isValidEmail(email: string): boolean { const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; return emailRegex.test(email); } console.log(isValidEmail("alice@example.com")); // 输出: true ``` #### 在Vue中的应用 在Vue项目中,布尔、数值与字符串类型的应用无处不在。它们不仅是数据绑定的基础,也是组件间通信、状态管理、用户输入处理等场景的核心。 - **数据绑定**:在Vue模板中,你可以直接将布尔、数值或字符串类型的变量绑定到HTML元素上,实现动态内容的展示。 - **计算属性**:利用Vue的计算属性(computed properties),你可以基于布尔、数值或字符串类型的变量进行复杂的逻辑计算,并返回新的值供模板使用。 - **事件处理**:在Vue组件中,事件处理函数常常需要处理用户输入的布尔值(如复选框的选中状态)、数值(如输入框中的数字)或字符串(如文本输入框的内容)。 - **组件间通信**:通过props向子组件传递数据,或通过emit触发事件向父组件传递数据时,布尔、数值与字符串类型都是最常见的传递类型。 ### 总结 布尔、数值与字符串是TypeScript与Vue开发中不可或缺的基础数据类型。掌握它们的基本用法、特性以及在Vue项目中的应用方式,是成为一名高效前端开发者的重要步骤。通过本节的学习,你应该能够熟练地在TypeScript中声明和使用这些类型,并在Vue项目中灵活地运用它们来构建动态、交互性强的用户界面。
上一篇:
2.2 TypeScript中的基本类型
下一篇:
2.2.2 特殊的空值类型
该分类下的相关小册推荐:
Vue.js从入门到精通(四)
Vue面试指南
移动端开发指南
Vue原理与源码解析
TypeScript和Vue从入门到精通(三)
vue项目构建基础入门与实战
Vue.js从入门到精通(三)
Vue源码完全解析
TypeScript和Vue从入门到精通(四)
Vue.js从入门到精通(一)
Vue.js从入门到精通(二)
Vue3技术解密