It may help to start by thinking of how types of testing complement each other:
There are more types of testing, obviously; but this gives some context for where ESLint fits in doing static code analysis. It processes the literal contents of your code against configured rules. The purpose is to provide code quality checks and code style enforcement. It's generally very fast and commonly set up to run whenever files are saved, giving very early error detection.
ESLint is configurable so there's no single, universal rule set (although there are popular options like AirBnB's ruleset). The possible rules are pretty extensive: eslint.org/docs/rules
Common things people check:
...etc.
So the end result is to lower the error rate in code; and have multiple developers producing code in a similar style (without having to talk about it in code reviews ;)).