typescript基本语法

TypeScript是JavaScript的一个超集,为JavaScript添加了类型、接口、泛型、类、模块等新的特性。以下是TypeScript一些基本语法:

变量声明

在TypeScript中使用let、const、var关键字来声明变量,使用冒号+类型来指定变量的类型,例如:

let count: number = 10;
const name: string = 'Tom';
var age: number = 18;

函数声明

使用函数名加上参数列表来声明函数,使用冒号+类型来指定参数类型和函数返回值类型,例如:

function sum(a: number, b: number): number {
  return a + b;
}
const greet = (name: string): void => {
  console.log(`Hello, ${name}!`);
}

类声明

使用class关键字加上类名来声明类,使用constructor方法来初始化对象,使用方法名+参数列表来声明类的方法,例如:

class Person {
  constructor(public name: string, public age: number) {}

  sayHello(): void {
    console.log(`Hello, my name is ${this.name}, and I am ${this.age} years old.`);
  }
}

const p = new Person('Tom', 18);
p.sayHello();

接口声明

使用interface关键字加上接口名来声明接口,使用花括号中定义接口的属性、方法、参数等,例如:

interface Point {
  x: number;
  y: number;
}

function printPoint(p: Point): void {
  console.log(`(${p.x}, ${p.y})`);
}

const pt: Point = { x: 10, y: 20 };
printPoint(pt);

泛型

使用来定义泛型本身及其类型变量,使用泛型可以实现类型的动态灵活,例如:

function identity<T>(arg: T): T {
  return arg;
}

const result: string = identity<string>('Hello, TypeScript!');
console.log(result);

类型推断

TypeScript的类型推断让我们能在一定程度上省略一些类型声明,编译器可以根据上下文推断变量、函数的类型,例如:

const count = 10; // 编译器会推断count的类型为number
const names = ['Tom', 'Jerry']; // 编译器会推断names的类型为string[]

类型别名

使用type关键字定义类型别名,方便复杂类型的多次使用,例如:

type People = {
  name: string;
  age: number;
}

const p: People = { name: 'Tom', age: 18 };
console.log(p.name, p.age);

以上是TypeScript一些基本语法,这些语法让我们能够更好地掌握类型、接口、类、泛型等关键特性,从而提高代码的可读性和可维护性。

posted @ 2023-05-03 20:52  Coder-Wang  阅读(84)  评论(0编辑  收藏  举报