美文网首页
关于typescript中的static修饰符

关于typescript中的static修饰符

作者: 南山码僧 | 来源:发表于2019-11-15 19:10 被阅读0次

很多人说熟悉js的童鞋学习ts更容易上手,其实把我觉得学过任何一门强语言的童鞋更容易上手。因为你很容易发现ts有很多和java/c++(等强语言)相似的语法。

什么修饰符public / private / protect / static / abstract 啊。。。

个人感觉和java里面的是一个意思!扯远了。。。

1: static 静态,顾名思义就是只属于我自己的,类自己的,不需要实例化即可引用。我是这样理解的。

举个简单的例子吧

一个类下面的方法或者变量,你想调用是不是要new一下变成实例才可以用?

如果是static,那么经过它修饰的变量还是方法都可以直接通过类引用了。看下面代码

class Test {

  myName: string = "lle";

  changeName(): void {

    this.myName= "change name"

  }

}

Test.changeName();  ----------->>>>>>>>>> ❌❌❌ 很明显是不可以的

class Test {

  static changeName(): void {

    console.log("=========>>>", "hello");

  }

}

Test.changeName();  ------------->>>>>>>>>> ✔️✔️✔️这样就是OK的

2:不能通过new出来的实例访问类的静态变量或方法,看下边例子代码

class Test {

  static myName: string = "lle";

  static changeName(): void {

    Test.myName = "change name";

  }

}

let instance = new Test();

instance.changName();  ----------->>>>>>>>>> ❌❌❌ 不可以

console.log("=========>>>",instance.myName); ----------->>>>> ❌❌❌ 不可以

class Test {

  static myName: string = "lle";

  static changeName(): void {

    Test.myName = "change name";

  }

}

Test.changeName();  ------------->>>>>>> ✔️✔️✔️这样就是OK的

console.log("=========>>>", Test.myName);  ------------->>>>>>> ✔️✔️✔️OK的

3: 类中访问自己的静态属性,不能用this,只能用类名。看下边代码

class Test {

  static myName: string = "lle";

  changeName(): void {

    this.myName = "change name";  ----------->>>>>>>>>> ❌❌❌ 不可以

  }

}

class Test {

  static myName: string = "lle";

  changeName(): void {

    Test.myName = "change name"; ----------->>>>> ❌❌❌ 不可以

  }

}

相关文章

  • 关于typescript中的static修饰符

    很多人说熟悉js的童鞋学习ts更容易上手,其实把我觉得学过任何一门强语言的童鞋更容易上手。因为你很容易发现ts有很...

  • php中的访问修饰符、方法修饰符、接口

    访问修饰符 方法修饰符 static(静态的) 1、static修饰属性成为静态属性,static修饰方法成为静态...

  • Java static 修饰符

    还是在复习Java,这一次是复习了static修饰符,再来总结一下吧。 一、static修饰符 static修饰符...

  • JavaScript 修饰符是什么,什么时候使用它们?

    修饰符随 Angular 2+ 变得流行起来。在 Angular 中,是 TypeScript 带来了修饰符,不过...

  • 关键字

    Advanced Language Features 知识点:一. static修饰符 static修饰符可以用来...

  • static关键字

    一.static关键字简介 static是静态修饰符,什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是...

  • 面向对象(十一)-Static

    Static 简介使用static修饰符声明属于类型本身而不是属于特定对象的静态成员。static修饰符可用于类、...

  • final 和 static 那些事

    static修饰符 static修饰符能够与属性、方法和内部类一起使用,表示静态的。类中的静态变量和静态方法能够与...

  • coreJava_7——static、final

    一、static修饰符 static修饰符可以用来修饰类的成员变量、成员方法和代码块。 用static修饰的成员变...

  • TypeScript中的关键字static

    TypeScript中的关键字static ES6中的静态成员在TypeScript也存在,类的静态成员可以使用类...

网友评论

      本文标题:关于typescript中的static修饰符

      本文链接:https://www.haomeiwen.com/subject/pfgsictx.html