XSS without parentheses and semi-colons

Cross Site Scripting (XSS)

A few years ago I discovered a technique to call functions in JavaScript without parentheses using onerror and the throw statement. It works by setting the onerror handler to the function you want to call and the throw statement is used to pass the argument to the function

https://portswigger.net/blog/xss-without-parentheses-and-semi-colons