removeEventListener и bind правильное использование

Метод bind у функции возвращает новую функцию, поэтому нельзя делать вот так:

function onClick() { console.log('hello kitty');}

button.addEventListener('click', onClick.bind(this));

button.removeEventListener('click', onClick.bind(this));

Отписки не произойдет, на выходе будет две разные функции, для отписки надо сделать так:

function onClick() { console.log('hello kitty');}

const onClickFn = onClick.bind(this);

button.addEventListener('click', onClickFn);

button.removeEventListener('click', onClickFn);