Допустим, вы хотели получить ws.ongameover
и хотели, чтобы он звонил, когда игра закончилась.
Вы можете просто написать код, подобный этому:
// assign your function to the ws.ongameover property
ws.ongameover = function() {
console.log("game over");
}
Затем, в каком-то месте иначе в вашем коде, где вы видите, что игра на самом деле окончена, вы можете запустить ее следующим образом:
// if there's a gameover handler, then call it
if (ws.ongameover) {
ws.ongameover();
}
Обратите внимание, что обычно это лучший шаблон проектирования для использования событий и обработчиков событий, потому что он более масштабируемый, чем Вы можете иметь несколько слушателей для одного и того же события, а отдельные фрагменты кода могут добавлять или удалять своих собственных слушателей. В браузере они используют addEventListener()
, а в node.js они используют интерфейс класса EventEmitter
(оба схожи по концепции). С помощью любого из них вы можете создавать свои собственные имена событий, код может прослушивать эти имена событий, а затем другой код может запускать эти события, когда они происходят.