TypeScript 概述

简介: TypeScript 概述

JavaScript 是什么

  • JS 是一种运行在客户端(比如:浏览器)中的编程语言,为网站提供动态交互特性,让网页动起来
  • 运行环境:
  • 浏览器
  • Node.js
  • 可以实现服务器端 / 桌面端编程等

TypeScript 是什么

  • TS 是 JavaScript 的超集(JS 有的 TS 都有)
  • 为 JS 添加了类型系统
// TypeScript 代码:有明确的类型,即 : number(数值类型)letage: number=10;
// JavaScript 代码:无明确的类型letage=10;
  • 还添加了 接口、枚举 等
  • 设计目标:开发大型项目

TypeScript 的特征

静态类型

类型系统按照“类型检查的时间”可分为静态类型和动态类型

  • 静态类型是指在编译阶段就能确定每个变量的类型,如果有错误,在编译的时候就会报错
  • TypeScript 是静态类型,ts 文件在运行前要先编译为 js 文件,在编译的时候就会进行类型检查
letnum: number=1;
num.split(' ');
// 编译时会报错 Property 'split' does not exist on type 'number'(类型“number”上不存在属性“split”)

  Snipaste_2021-05-14_18-03-51.jpg

  • 动态类型是指在运行阶段才会进行类型检查,如果有错误,在运行的时候才会报错
  • JavaScript 是动态类型,它是一种解释型语言,没有编译阶段
varnum=1;
num.split(' ');
// 运行时会报错 

Snipaste_2021-05-14_18-02-45.jpg

弱类型

类型系统按照“是否允许隐式类型转换”可分为强类型和弱类型

  • 弱类型:数据类型可以忽略,可以不给变量指定类型
  • TypeScript 是 JavaScript 的超集,所以 TS 允许 JS 中所允许的所有操作,它和 JavaScript 一样都是弱类型
    注:TS 只是提前了类型检查的时间,并没有让系统本身变得更加严格
console.log(1+'1');
// 在TS和JS中运行结果相同,都为字符串 11

TypeScript 代码运行

将 ts 文件转换为 js 文件,在 html 中引入 js 文件,即可运行

  • 新建 ts 文件,输入以下求和代码
functionsum(a: number, b: number) {
returna+b;
};
console.log(sum(1, 2));
  • 打开终端,并输入 tsc 文件名.ts 单机回车

Snipaste_2021-05-14_20-33-32.jpg

  • 新建一个 html 文件,使用 <script> 标签引入 js 文件
<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Document</title></head><body><!--引入js文件--><scriptsrc="n2_overview.js"></script></body></html>
  • 在浏览器中运行 html 文件,即可在控制台查看到运行结果

Snipaste_2021-05-14_20-37-55.jpg

优势

TypeScript 与 JavaScript 相比

  • 类型化思维方式,使得开发严谨,提前发现错误,减少改 Bug 时间
  • 类型系统提高了代码可读性,并使维护和重构代码更加容易
  • 补充了接口、枚举等开发大型应用时 JS 缺失的功能
    Vue 3 源码使用 TS 重写,Angular 默认支持 TS,React 与 TS 完美配合
相关文章
|
JavaScript 前端开发 IDE
带你读《现代TypeScript高级教程》一、概述(附卷首语)
带你读《现代TypeScript高级教程》一、概述(附卷首语)
122 0
|
JavaScript 编译器
TypeScript-never和object类型、类型断言概述
TypeScript-never和object类型、类型断言概述
68 0
typescript69-类型声明文件概述
typescript69-类型声明文件概述
97 0
typescript69-类型声明文件概述
typescript33-typescript高级概述
typescript33-typescript高级概述
75 0
typescript33-typescript高级概述
|
存储 JavaScript 前端开发
重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述
洛伊安妮·格罗纳女士所著的《学习JavaScript数据结构与算法》第三版于2019年的5月份再次刊印发行,新版内容契合当下,实为JavaScript开发人员的必备之佳作。有幸重读此版,与诸君分享共勉。
336 0
|
2月前
|
JavaScript 前端开发 安全
深入理解TypeScript:增强JavaScript的类型安全性
【10月更文挑战第8天】深入理解TypeScript:增强JavaScript的类型安全性
64 0
|
2月前
|
JavaScript 前端开发 开发者
深入理解TypeScript:类型系统与实用技巧
【10月更文挑战第8天】深入理解TypeScript:类型系统与实用技巧
|
3月前
|
存储 JavaScript
typeScript进阶(11)_元组类型
本文介绍了TypeScript中的元组(Tuple)类型,它是一种特殊的数组类型,可以存储不同类型的元素。文章通过示例展示了如何声明元组类型以及如何给元组赋值。元组类型在定义时需要指定数组中每一项的类型,且在赋值时必须满足这些类型约束。此外,还探讨了如何给元组类型添加额外的元素,这些元素必须符合元组类型中定义的类型联合。
54 0
|
1月前
|
设计模式 JavaScript 安全
TypeScript性能优化及代码质量提升的重要性、方法与策略,包括合理使用类型注解、减少类型断言、优化模块导入导出、遵循编码规范、加强代码注释等
本文深入探讨了TypeScript性能优化及代码质量提升的重要性、方法与策略,包括合理使用类型注解、减少类型断言、优化模块导入导出、遵循编码规范、加强代码注释等,旨在帮助开发者在保证代码质量的同时,实现高效的性能优化,提升用户体验和项目稳定性。
46 6
|
1月前
|
开发框架 JavaScript 前端开发
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势。通过明确的类型定义,TypeScript 能够在编码阶段发现潜在错误,提高代码质量;支持组件的清晰定义与复用,增强代码的可维护性;与 React、Vue 等框架结合,提供更佳的开发体验;适用于大型项目,优化代码结构和性能。随着 Web 技术的发展,TypeScript 的应用前景广阔,将继续引领 Web 开发的新趋势。
39 2

热门文章

最新文章