The Email Validation script rejects valid e-mail addresses, such as email@example.com. Top-level domains are not limited to only four letters, and any similar limitation will only require future monitoring and maintenance. The script also accepts addresses that are clearly wrong, such as firstname.lastname@example.org.
It's been argued on Usenet fairly recently that it may just be better to leave proper validation to the server, which is more likely to be equipped to parse the address in full. In that instance, code on the client only needs to make sure that the input looks vaguely like an address (something as simple as /.+@.+(\..+)+/).