This is definitely the most popular type of website. It’s a dynamic website with JavaScript.
With plain HTML, forms are the only way to get a user’s input from the client (the browse) to your server (PHP, MySQL).
With JavaScript, there’s another, much more flexible way to get user’s input called AJAX. You can use AJAX to make requests (CRUD requests) to a server.
Let’s go back to the email client example, You create a new email and click send. Instead of seeing the page refresh, you see a little leading icon appear and a little confirmation that your email sent, all without the page reloading.
You delete an email, and it instantly disappears, and you’re very glad the page didn’t refresh because you were halfway down the page and planning to delete the next email. If the page refreshed, sending you been to the top of the page, you definitely would’ve lost your place.
Again, you’re half way down the page, and you mark an email as read. The email is marked as read, and you don’t lose your spot because the page didn’t refresh.
In each of these situations, JavaScript is sending user’s input to the server where it’s saved to a database.
JavaScript is the tool that makes your website feel like an application instead of a website.
In addition to submitting user’s input to the server, the JavaScript is also probably managing lots of data.
JavaScript definitely improves the user experience, but it also adds a lot of complexity. Ironically, the more intuitive your website is to use, the less intuitive it is for you to build.