Skip to content
泠泠彻夜的笔记
Main Navigation首页笔记
HTML
CSS
JavaScript
TypeScript
Node.js
Vue3
uniapp
插件
算法题

外观

Sidebar Navigation

TypeScript学习笔记

TypeScript简介

TypeScript类型

TypeScript数组

TypeScript的symbol类型

TypeScript函数类型

TypeScript的对象类型

TypeScript的interface接口

TypeScript的class类型

TypeScript泛型

此页内容
Table of Contents for current page
  • 1. 概述
  • 2. 类型
    • 2.1 动态类型与静态类型
    • 2.2 静态类型的优点
    • 2.3 静态类型的缺点
  • 3. 基本用法
    • 3.1 类型声明
    • 3.2 类型推断

TypeScript简介

怡然

509字约2分钟

2024-08-20

1. 概述

  • 基于JavaScript的编程语言。
  • 可看成JS的超集,继承了JS的全部语法,增加了一部分自己的语法。

2. 类型

  • 类型(type)指一组具有同样特征的值。某个值是该类型的,则可以进行该类型的所有运算。
  • 类型是人为添加的一种编程约束和用法提示。
function addOne(n: number) {
  return n + 1; // 调用是传入数字类型可以正常使用,若传入其他类型则会报错
}

2.1 动态类型与静态类型

  • 动态类型:变量的类型是由变量的值决定的,而不是由变量的声明决定的,JavaScript就是属于动态类型语言。
  • 静态类型:变量的类型是由变量的声明决定的,而不是由变量的值决定的。随意赋值、增删变量会报错。

2.2 静态类型的优点

  1. 有利于代码的静态分析
  2. 有利于发现错误
  3. 更好的IDE支持,做到语法提示和自动补全
  4. 提供代码文档
  5. 有助于代码重构

2.3 静态类型的缺点

  1. 丧失了动态类型的代码灵活性
  2. 增加了编程工作量
  3. 更高的学习成本
  4. 引入了独立的编译步骤
  5. 兼容性问题

3. 基本用法

3.1 类型声明

  • 类型声明的写法,一律为在标识符后面添加 冒号 + 类型 。函数参数和返回值,也是这样来声明类型。
  • 变量只有赋值后才能使用,否则就会报错。
// 报错
let foo: string = 123;

let x: number;
console.log(x); // 报错

3.2 类型推断

  • 类型声明并不是必需的,如果没有,TypeScript 会自己推断类型。
  • 因为 TypeScript 的类型推断,所以函数返回值的类型通常是省略不写的。
let foo = 123; // 推断为 number,后面赋值为字符串,TypeScript 就报错了。
贡献者: tsxwslk
下一页TypeScript类型

Power by VuePress & vuepress-theme-plume