JavaScript is a lightweight, interpreted programming language that is used for client-side web development. It was originally introduced in 1995 to make web pages more interactive and has since expanded to server-side applications through Node.js. Some best practices for JavaScript include using meaningful variable names, writing narrative code, avoiding polluting the global namespace, using strict mode, isolating DOM access, following common patterns like the module pattern, and progressively enhancing functionality while degrading gracefully without JavaScript.