ES6两种静态属性的书写方法

 

 

1、这种可以不用实例化对象就能输出。

 

class Car{

        constructor(){

            

        }

    }

    Car.tool=4

    console.log(Car.tool);//4

 

2、必须实例化后才能输出。但他们都是挂在类上的静态属性。

 

 

class Car{

        constructor(){

            Car.speed=0;

        }

    }

    

    console.log(Car.speed); //undefined;

    new Car();

    console.log(Car.speed);//0

 

 

3、静态方法如果不是类表达式的话只有使用static声明。
是类表达式的话可以通过:

 

const Car1=class Car{

        constructor(){

            Car.a=function(){

                console.log('我是一个静态方法');

            }

            Car.b='我是一个静态属性!';

        }

        static say(){

            console.log('我也是一个静态方法1!');

        }

    }

 

 

 

static不用实例化就可以输出;通过挂在类名上方法添加的必须实例化才行。

 

posted @ 2020-09-16 00:03  是桂  阅读(581)  评论(0编辑  收藏  举报