• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Typescript

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Typescript

TypeScript是JavaScript的超集,这意味着其完全兼容JS。

 

TypeScript类型注解

类型注解:轻量级的为函数或变量添加约束的方式
~ 语法 let title:string
~ 常用类型:string,number,boolean,string[],[string,number],any,any[],object
~ 枚举类型enum
声明 enum Color{Red,Green,Blue}
使用 Color.Blue

let tt: any;
tt = '1100';

const t1 = '123';

enum  Color {
  Red,
  Blue,
  Green
}
const c = Color.Red;

 

~ 函数类型注解
参数类型 function greeting(msg:string){}
返回值类型
function warning():void{}
function plus(a,b):number{}
~ 类型推论:如果直接给变量赋值,不必设置类型注解,编译器会进行类型推断

function f(): void {
  alert('112334');
}

function  add(a: number, b: number): number {
  return a + b;
}
console.log(add(1 , 2));

 

- 接口:约束类型的结构。
~ 声明接口 interface Person{ firstName:string;lastName:string;toString():string; }
~ 实现接口 只需和接口声明兼容即可

interface Person {
  firstName: string;
  lastName: string;
}

function f1(person: Person): string {
  return person.firstName + ' ' + person.lastName;
}
const user1 = { firstName: 'zz', lastName: '22'};
console.log(f1(user1));

 

- 类:TypeScript支持JavaScript的新特性,比如支持基于类的面向对象编程
~ 声明类
class Student{
fullName: string;

contructor(){}
}

new Student()

class Student {
  fullName: string;
  constructor(public firstName: string , public lastName: string) {
    this.fullName = firstName + ' ' + lastName;
  }
  toString(): string{
    return this.fullName;
  }
}
const stuInstance = new Student('zhan' , 'san');
console.log(stuInstance.toString());
console.log(stuInstance.fullName);
console.log(stuInstance.firstName + ' ' + stuInstance.lastName);

 

- 函数
~ TypeScript中函数如果声明了参数,则这些参数是必须的
~ 可选参数
function buildName(firstName:string,lastName?:string)

* 注意:可选参数必须放在必须参数后面

~ 参数默认值
function buildName(firstName:string,lastName:string = 'Smith')

function buildName(firstName: string , lastName: string): string {
  return `$firstName $lastName`;
}

 

- 模块:A = B + C
~ 导入 import 导出 export
~ 导出
* 具名导出
export const title=''

* 默认导出
export default class{...}
注意:一个文件中默认导出只能有一个

* 导出语句
export {a,b,c}

~ 导入
* 具名导入
import {title} from './type-annotation'

* 默认导入
import Student from './type-annotation'


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
使用typescript改造koa开发框架发布时间:2022-07-18
下一篇:
Typescript学习系列---《button》发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap