What is JavaScript?#
JavaScript ES6 (also known as ECMAScript 6) is a client-side, cross-platform, prototype-based scripting language created by Brendan Eich.
JavaScript is used extensively in front-end web development to help build dynamic, interactive web applications.
JavaScript is dynamically typed, meaning all type checking happens during compilation. Dynamically typed languages prioritize developer efficiency, enabling them to write less code to complete their projects.
Dynamically typed languages also tend to be more flexible, but offer code that is typically less optimized because it must be run first to find out if any bugs are present.
JavaScript also runs directly in the web browser, so no additional resources are needed to execute JavaScript code. However, it can still be overwhelming to debug a cascade of errors all at once instead of along the way.
Note: Other examples of dynamically typed languages include Python, PHP, Perl, and Ruby.
Since its inception in 1995, JavaScript has gone through multiple iterations to improve its functionality, and make software development easier. Now, it can even be used to create interactive games!
Plain JavaScript started off as a very simple language meant to be embedded as short snippets of code on a web page. This is because, at the time, a few dozen lines of code were all a web browser could really handle without becoming unusably slow.
Now, modern browsers are capable of running JavaScript applications with hundreds of thousands of lines of code.
JavaScript also benefits from having a large, passionate community, extensive documentation, and plenty of libraries and frameworks. In addition, JavaScript supports many client-side APIs that can reduce the amount of code that a software developer needs to write. For these reasons, JavaScript is a popular choice for most development teams.
That being said, JavaScript wasn’t originally meant for use in large projects. So, even though small projects could be reliably debugged, attempting to debug a large project in JavaScript could be a tedious, time-consuming process.
Note: You may not think of JavaScript as being an object-oriented programming language, but it actually has great support for OOP!