简体   繁体   中英

create a new class instance in JS

I know that these two scripts are correct and are identical but I need to know what is the most used:

const EventEmitter = require('events');

class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

and

var Emitter = require('events');

var emtr = new Emitter();

Theyre not that equal. With the first one you can easily override properties:

const EventEmitter = require('events');
class MyEmitter extends EventEmitter {
  test(){
    console.log("test");
  }
}
var instance=new MyEmitter();

While the second:

var Emitter = require('events');
var emtr = new Emitter();
emtr.test=_=>console.log("test");
var instance=Object.create(emtr);
emtr.constructor.call(instance);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM