немного искуственный пример но на днях делал и запомнилось - нужно было 2 way data binding заимплементить на инпуте, это 1 из вопросов интервью и там input.value менял и через диспатч ивент через жс эмулировал пользовательский ввод change чтобы проверить что работал код.
сразу проверку вставил в скрипт