ts的特性

news/2024/11/22 19:00:34/

两个最重要的特性,类型系统、适用于任何规模

  1. 类型系统分为静态类型和动态类型

动态类型是指运行时才会进行类型检查,这种类型检查会在运行时导致报错

let foo = 1;
foo.split(' ');
// Uncaught TypeError: foo.split is not a function
// 运行时会报错(foo.split 不是一个函数),造成线上 bug

静态类型是指编译阶段就能确定每个变量的类型,这种语言的类型错误会导致语法错误。ts在运行前需要先编译为js,而编译阶段就会类型检查

let foo = 1;
foo.split(' ');
// Property 'split' does not exist on type 'number'.
// 编译时会报错(数字没有 split 方法),无法通过编译
  1. ts和js都是弱类型,运行时数字1会被隐式类型转换为字符串‘1’,加号被识别为字符串拼接,打印出的结果就是‘11’
console.log(1 + '1');
// 打印出字符串 '11'

python是强类型,在运行这段代码时会报错

print(1 + '1')# TypeError: unsupported operand type(s) for +: 'int' and 'str'

想要修复只能强制转换类型

print(str(1) + '1')# 打印出字符串 '11'
  1. ts的优点

TypeScript 增强了编辑器(IDE)的功能,包括代码补全、接口提示、跳转到定义、代码重构等,这在很大程度上提高了开发效率。而且 TypeScript 有近百个[编译选项][],如果你认为类型检查过于严格,那么可以通过修改编译选项来降低类型检查的标准。

TypeScript 还可以和 JavaScript 共存。这意味着如果你有一个使用 JavaScript 开发的旧项目,又想使用 TypeScript 的特性,那么你不需要急着把整个项目都迁移到 TypeScript,你可以使用 TypeScript 编写新文件,然后在后续更迭中逐步迁移旧文件。如果一些 JavaScript 文件的迁移成本太高,TypeScript 也提供了一个方案,可以让你在不修改 JavaScript 文件的前提下,编写一个[类型声明文件][],实现旧项目的渐进式迁移。

4)什么是 TypeScript?

  • TypeScript 是添加了类型系统的 JavaScript,适用于任何规模的项目。
  • TypeScript 是一门静态类型、弱类型的语言。
  • TypeScript 是完全兼容 JavaScript 的,它不会修改 JavaScript 运行时的特性。
  • TypeScript 可以编译为 JavaScript,然后运行在浏览器、Node.js 等任何能运行 JavaScript 的环境中。
  • TypeScript 拥有很多编译选项,类型检查的严格程度由你决定。
  • TypeScript 可以和 JavaScript 共存,这意味着 JavaScript 项目能够渐进式的迁移到 TypeScript。
  • TypeScript 增强了编辑器(IDE)的功能,提供了代码补全、接口提示、跳转到定义、代码重构等能力。
  • TypeScript 拥有活跃的社区,大多数常用的第三方库都提供了类型声明。
  • TypeScript 与标准同步发展,符合最新的 ECMAScript 标准(stage 3)。

http://www.ppmy.cn/news/142846.html

相关文章

TS基础。

ts数据类型 export default{} //基础数据类型 //let var count //数值类型 let num; num 100; //num"诺兰" num 3.14; console.log(num); //布尔型 let flag: boolean; flag true; flag false;//字符串型 let beauty: string; beauty "盗梦空间"; l…

【TypeScript】Ts基本概念

TypeScript基本概念 TypeScript 是什么? 目标:能够说出什么是typescript 内容: TS 官方文档TS 中文参考 - 不再维护 TypeScript 简称:TS,是 JavaScript 的超集,简单来说就是:JS 有的 TS 都有…

typescript(ts)基础

基本类型 const a: string boo // 不写string ts解析器会做类型推论 const b: number 123 // 可 NaN Infinity 也支持16/2/8进制 const c: boolean true // 类型声明/类型注解1 << 1 位运算有啥用?? 1 << 2 & | ! 是啥? 怎么来的? 为什么用ts(优点) …

什么是ts(typeScript)

ts:官网地址&#xff1a;https://www.tslang.cn/ 首先通过 npm 全局安装 TypeScript&#xff1a;npm i -g typescript 全局 安装 ts命令&#xff1a; npm install -g typescript 使用 tsc -v 检测是否安装成功 创建ts项目过程&#xff1a; 1.新建一个ts文件 2.在控制终端…

ICM TSCC视频格式的播放

最近从网上下载了些教学视频&#xff0c;文件后缀为.avi&#xff0c;但我将常见的AVI解码软件都装上了&#xff0c;还是无法观看视频&#xff1a;视频无法得到解码。 用realone播放提示&#xff0c;找不到支持icm tscc格式的解码器。 网上搜索了一遍&#xff0c;有人提到装一个…

ts基础应用

目录 一 认识ts 二 ts优势 三 初始化安装 四 数据类型 静态类型 基本类型与对象类型 函数相关类型 五 类型注解与类型推断 六 基本语法练习 坑一: 类型为 any 所以只能这在一样 坑二 &#xff1a;其他的case 一 认识ts ts 是一个js 的超级集群&#xff1b;他不会被…

8.TypeScript入门之TS类型声明文件

~~ ~~ 上一章节&#xff1a;7.TypeScript入门之TS高级类型&#xff08;索引签名类型和映射类型&#xff09; Ⅴ.TypeScript 类型声明文件 概述 今天几乎所有的 JavaScript 应用都会引入许多第三方库来完成任务需求。 这些第三方库不管是否是用 TS 编写的&#xff0c;最终都…

【科普】TS文件格式:什么是TS?如何打开,编辑和转换它?

概要 对于TS文件&#xff0c;相信很多人都对它很陌生&#xff0c;它并不像MP4格式那么流行。为了让大家进一步了解TS文件&#xff0c;本文将围绕TS文件格式&#xff0c;详细介绍它的来源、适用范围、打开方式以及如何编辑转换等。什么是TS文件格式 TS&#xff08;Transport St…