Django/web_application_security)
    16. [ Assessment: DIY Django mini blog ](/en-US/docs/Learn/Server-side/Django/django_assessment_blog)
  42. Express Web Framework (Node.js/JavaScript) 
    1. [ Express web framework (Node.js/JavaScript) ](/en-US/docs/Learn/Server-side/Express_Nodejs)
    2. [ Express/Node introduction ](/en-US/docs/Learn/Server-side/Express_Nodejs/Introduction)
    3. [ Setting up a Node development environment ](/en-US/docs/Learn/Server-side/Express_Nodejs/development_environment)
    4. [ Express Tutorial: The Local Library website ](/en-US/docs/Learn/Server-side/Express_Nodejs/Tutorial_local_library_website)
    5. [ Express Tutorial Part 2: Creating a skeleton website ](/en-US/docs/Learn/Server-side/Express_Nodejs/skeleton_website)
    6. [ Express Tutorial Part 3: Using a Database (with Mongoose) ](/en-US/docs/Learn/Server-side/Express_Nodejs/mongoose)
    7. [ Express Tutorial Part 4: Routes and controllers ](/en-US/docs/Learn/Server-side/Express_Nodejs/routes)
    8. [ Express Tutorial Part 5: Displaying library data ](/en-US/docs/Learn/Server-side/Express_Nodejs/Displaying_data)
    9. [ Express Tutorial Part 6: Working with forms ](/en-US/docs/Learn/Server-side/Express_Nodejs/forms)
    10. [ Express Tutorial Part 7: Deploying to production ](/en-US/docs/Learn/Server-side/Express_Nodejs/deployment)
  43. [ **Further resources** ](/en-US/docs/Learn/Common_questions)
  44. Common questions 
    1. [ Common questions ](/en-US/docs/Learn/Common_questions)
    2. [ Use HTML to solve common problems ](/en-US/docs/Learn/HTML/Howto)
    3. [ Use CSS to solve common problems ](/en-US/docs/Learn/CSS/Howto)
    4. [ Solve common problems in your JavaScript code ](/en-US/docs/Learn/JavaScript/Howto)
    5. [ Web mechanics ](/en-US/docs/Learn/Common_questions/Web_mechanics)
    6. [ Tools and setup ](/en-US/docs/Learn/Common_questions/Tools_and_setup)
    7. [ Design and accessibility ](/en-US/docs/Learn/Common_questions/Design_and_accessibility)

##  In this article

  * Prerequisites 
  * Modules 
  * Solving common JavaScript problems 
  * See also 

#  JavaScript â Dynamic client-side scripting

[ JavaScript ](/en-US/docs/Glossary/JavaScript) is a programming language that
allows you to implement complex functionalities on web pages. Every time a web
page does more than just sit there and display static information for you to
look atâdisplaying timely content updates, interactive maps, animated 2D/3D
graphics, scrolling video jukeboxes, or moreâyou can bet that JavaScript is
probably involved.

##  Prerequisites

JavaScript is arguably more difficult to learn than related technologies such
as [ HTML ](/en-US/docs/Learn/HTML) and [ CSS ](/en-US/docs/Learn/CSS) .
Before attempting to learn JavaScript, you are strongly advised to get
familiar with at least these two technologies first, and perhaps others as
well. Start by working through the following modules:

  * [ Getting started with the Web ](/en-US/docs/Learn/Getting_started_with_the_web)
  * [ Introduction to HTML ](/en-US/docs/Learn/HTML/Introduction_to_HTML)
  * [ Introduction to CSS ](/en-US/docs/Learn/CSS/First_steps)

Having previous experience with other programming languages might also help.

After getting familiar with the basics of JavaScript, you should be in a
position to learn about more advanced topics, for example:

  * JavaScript in depth, as taught in our [ JavaScript guide ](/en-US/docs/Web/JavaScript/Guide)
  * [ Web APIs ](/en-US/docs/Web/API)

##  Modules

**Our policy on modern JavaScript**

JavaScript is an actively evolving language and has changed greatly over the
years. In particular, the 6th edition of the language (sometimes known as
ECMAScript 2015 or ES6), introduced in 2015, added many new features. At the
same time, to maintain backwards compatibility with older websites, old
features of the language have been retained, even when they are no longer
considered good practice.

We think that the features added to JavaS