介绍:
TypeScript是一种由微软开发的开源、跨平台的编程语言。它是JavaScript的超集,最终会被编译为JavaScript代码。TypeScript添加了可选的静态类型系统、很多尚未正式发布的ECMAScript新特性(如装饰器 )。2012年10月,微软发布了首个公开版本的TypeScript,2013年6月19日,在经历了一个预览版之后微软正式发布了正式版TypeScript。当前最新版本为TypeScript 4.0
TypeScript起源
起源:在开发大型项目时,由于JavaScript语言本身的局限性,难以胜任和维护大型项目开发。因此微软开发了TypeScript,使得其能够胜任开发大型项目。
TypeScript是什么?
TypeScript是微软开发的开源、跨平台、面向对象的脚本解释型编程语言。
TypeScript(简称:TS)是JavaScript的超集(JS有的TS都有),最终会被编译为JavaScript代码。
TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以运行在TypeScript环境中。TypeScript是为大型应用的开发而设计的
TypeScript = Type + JavaScript(为JS添加了类型系统)
//TypeScript 代码:有明确的类型,即:number(数值类型)
let age: number = 18
//JavaScript 代码:无明确的类型
Let age = 18
可以在任何浏览器、任何计算机、任何操作系统上运行。
TypeScript的特点:
TypeScript 是 Microsoft 推出的开源语言,使用 Apache 授权协议
TypeScript 增加了静态类型、类、模块、接口和类型注解
TypeScript 可用于开发大型的应用
TypeScript 易学易于理解
JavaScript是什么?
JavaScript是一种运行在客户端中的轻量级的解释性脚本编程语言。
当应用于浏览器时,为网站提供动态交互特性,让网页“动”起来。
JavaScript 是基于对象和事件驱动的,无需特定的语言环境,只需在支持的浏览器上就能运行。
JavaScript的特点:
JavaScript 是一种脚本编写语言,无需编译,只要嵌入 HTML 代码中,就能由浏览器逐行加载解释执行。
JavaScript 是一种基于对象的语言,可以创建对象同时使用现有对象。但是 JavaScript 并不支持其它面向对象语言所具有的继承和重载功能。
JavaScript 的语法简单,使用的变量为弱类型。
JavaScript 语言较为安全,仅在浏览器端执行,不会访问本地硬盘数据。
JavaScript 语言具有动态性。JavaScript 是事件驱动的,只根据用户的操作做出相应的反应处理。
JavaScript 只依赖于浏览器,与操作系统的因素无关。因此 JavaScript 是一种跨平台的语言。
JavaScript 兼容性较好,能够与其他技术(如 XML,REST API 等)一起使用。
JavaScript 和 TypeScript 的主要差异
*TypeScript从类概念方面对 JavaScript对象进行扩展。
*JavaScript代码可以在无需任何修改的情况下与 TypeScript 一同工作
TypeScript可以使用编译器将代码转换为JavaScript
*TypeScript 通过类型注解(变量的类型并不一定是固定的)提供编译时的静态类型检查
*TypeScript 中的数据要求带有明确的类型,JavaScript不要求。
*TypeScript 为函数提供了缺省参数值(函数可以不带参数)
*TypeScript 引入了 JavaScript 中没有的“类”概念
*TypeScript 中引入了模块的概念,可以把声明、数据、函数和类封装在模块中
TypeScript的优势
下面列举 TypeScript 相比于 JavaScript 的显著优势:
1. 静态输入
静态类型化是一种功能,可以在开发人员编写脚本时检测错误。查找并修复错误是当今开发团队的迫切需求。有了这项功能,就会允许开发人员编写更健壮的代码并对其进行维护,以便使得代码质量更好、更清晰。
2. 大型的开发项目
有时为了改进开发项目,需要对代码库进行小的增量更改。这些小小的变化可能会产生严重的、意想不到的后果,因此有必要撤销这些变化。使用TypeScript工具来进行重构更变的容易、快捷。
3. 更好的协作
当发开大型项目时,会有许多开发人员,此时乱码和错误的机也会增加。类型安全是一种在编码期间检测错误的功能,而不是在编译项目时检测错误。这为开发团队创建了一个更高效的编码和调试过程。
4. 更强的生产力
干净的 ECMAScript 6 代码,自动完成和动态输入等因素有助于提高开发人员的工作效率。这些功能也有助于编译器创建优化的代码。
JavaScript的优势
相比于 TypeScript,JavaScript 也有一些明显优势。
1. 人气
JavaScript 的开发者社区仍然是巨大而活跃的,在社区中可以很方便地找到大量成熟的开发项目和可用资源。
2. 学习曲线
由于 JavaScript 语言发展的较早,也较为成熟,所以仍有一大批开发人员坚持使用他们熟悉的脚本语言 JavaScript,而不是学习 TypeScript。
3. 本地浏览器支持
TypeScript 代码需要被编译(输出 JavaScript 代码),这是 TypeScript 代码执行时的一个额外的步骤。
4. 不需要注释
为了充分利用 TypeScript 特性,开发人员需要不断注释他们的代码,这可能会使项目效率降低。
5. 灵活性
有些开发人员更喜欢 JavaScript 的灵活性。
为什么开源,跨平台?
NPM:
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:
允许用户从NPM服务器下载别人编写的第三方包到本地使用。
允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
Typescript作用于哪一领域?
平台
如何配置环境?
编译器
TypeScript 编译器,名称叫 tsc, 是用可以被编译为可以被执行在任何 JavaScript 引擎中,在任何宿主 - 如浏览器 - 中的常规 JavaScript 的 TypeScript 写的。
类型注解(Type annotation)
所谓类型注解,就是人为为一个变量指定类型,例如:
const count: number = 123;
const word: word = '123';
// TypeScript中一个变量的类型并不一定是固定的,例如
let temp: string | number = '234';
temp = 123; // 这样也不会报错
冒号后面就是类型注解。可是在这种情况下实际上是不必要人为指定的:
面向对象编程的 4 个原理(封装、抽象、继承和多态)
开发工具准备
vscode
安装node.js
安装typescript需要用到npm管理工具,而npm是随同Node.js一起安装的包管理工具,所以要先安装Node.js
1、前往Node官网下载最新版安装包:http://nodejs.cn/download/,双击运行
2、选择安装模式的时候我们只选 npm package manager 就可以了,安装好后打开cmd,输入node -v、npm -v检查一下版本号
出现对应的版本号说明Node安装成功,我们只安装了npm管理工具
安装解析TS的工具包
安装好npm工具后打开cmd,使用 npm install -g typescript 命令安装typescript(注意:需要联网)
使用 tsc -v 命令检查一下版本号
显示对应版本号说明安装成功
typescript:就是用来解析TS的工具包,提供了tsc命令,实现了TS 到JS的转化
npm:用来安装前端开发中用到的包,是安装node.js时自动安装的
i(install):表示安装
-g(-global):全局标识,可以在任意目录中使用该工具
配置idea
TS
let message: string = "Hello World";
console.log(message);
JS
var message = "Hello World";
console.log(message);
演示视频连接:
打开百度网盘复链接:https://pan.baidu.com/s/1TlmpVqZUnzVmS4YI_ETw_g
提取码:void
以上便是我们小组对于typescript的一点基础认识。
小组成员:高斯翔、郑浩、张家喜、刘欣、杨虎文。