=> {});
                  
                  
                  
                  
                  
                  Я так понимаю у нас здесь объект http у которого есть метод createServer в который мы передаем коллбек. Верно?
                  
                  
                  
                  
                  
                  Вот я написал то же самое, myHttp:
                  
                  
                  let myHttp = {};
                  
                  
                  
                  
                  
                  myHttp.createServer = function createServer(callback) {
                  
                  
                    callback({ stream: 'request' }, { stream: 'response' });
                  
                  
                  };
                  
                  
                  
                  
                  
                  const server = myHttp.createServer(function (req, res) {
                  
                  
                    console.log(req.stream);
                  
                  
                    console.log(res.stream);
                  
                  
                  });
                  
                  
                
Судя по доке там примерно такое происходит. const EventEmitter = require('events') const myHttp = {} class MyServer extends EventEmitter { listen () { // Имитация бурной дейтельности setTimeout(() => this.emit('request', { stream: 'request' }, { stream: 'response' }), 3000) } } myHttp.createServer = (listener) => { const server = new MyServer() server.on('request', listener) return server } const server = myHttp.createServer(function (req, res) { console.log(req.stream) console.log(res.stream) }) server.listen()
@vipsexymillionaire спасибо!
Обсуждают сегодня