You can check - there is JavaScript that fills the hidden form field with a specific value after the page loads. Then, when the page returns to the server, verify that the hidden form field is expected. If not, it means JavaScript was not running.
Regarding whether it should be considered that spam is a completely different story, but in fact there is no concrete answer. You can simply have a <noscript> and tell the user that their presentation will not be executed if they did not enable JavaScript.
However, if you have JavaScript running, spammers will use another workaround for this. :)
source share