ts 之 装饰器

本文详细介绍了TypeScript中的装饰器概念,强调其作为编译时执行的函数特性,能修改类、属性或方法的行为。通过示例展示了装饰器如何在Node.js环境中工作,包括基本的装饰器用法和通过装饰器传递值。文中还总结了类装饰器与方法装饰器的参数区别。
摘要由CSDN通过智能技术生成

装饰器:装饰器是一种与类相关的语法,用来注释或者修改类和类方法的属性,装饰器一般和class类相关,普通函数不要使用

装饰器的本质是函数,它可以给类、属性或者方法增加一些其他的东西,扩展功能

修饰器对类的行为的改变,是代码编译时发生的(不是TypeScript编译,而是js在执行机中编译阶段),而不是在运行时。这意味着,修饰器能在编译阶段运行代码。也就是说,修饰器本质就是编译时执行的函数。
在Node.js环境中模块一加载时就会执行

(1)例子:

function decorator (target:any, key:any, descriptor:any) {
  console.log(target)
  console.log(key)
  console.log(descriptor)
}


class Test {
  private name:string;
  constructor(name:string) {
    this.name = name
  }
  @decorator
  getName () {
    return this.name
  }
}

执行该文件:ts-node index.ts

就会执行 decorator 这个函数

输出:

下面看下装饰器的这三个参数:

target : 作用于谁,对于静态成员来说是类的构造函数,对于实例成员来说是类的原型对象;<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值