Existence a client-side scripting linguistic communication, JavaScript needs some clients to interpret and execute information technology. In the case of web applications, we can utilise any of the supported web browsers as a platform for executing JavaScript. In the below sections, let's understand how does JavaScript run in a web browser and how the JavaScript engine interprets the JavaScript lawmaking. Moreover, we will also understand how JavaScript tin can integrate under various sections of an HTML folio.

  • How does JavaScript run in a web-browser?

  • How to embed and execute JavaScript in a web-browser?

    • Procedure to embed and execute JavaScript in the HTML <trunk> tag?

    • How to embed and execute JavaScript in HTML <head> ?

    • How to embed an external JavaScript file in HTML?

  • Procedure to diagnose an fault in JavaScript?

How does JavaScript run in a web-browser?

JavaScript is an interpreted language where code is explained and executed at the runtime. Additionally, nosotros know that web browsers empathise HTML and CSS and converting those languages into a visual display on the screen. The part of the web browser that understands HTML and CSS is called the rendering engine. However, almost browsers also have a JavaScript interpreter. That's the part of the browser that understands JavaScript and run JavaScript programs. A typical architecture of a browser looks like below:

Browser Architecture depicting how web-browser runs JavaScript

As we tin come across, the browser's Rendering engine interacts with the " JavaScript's Interpreter " and sends the JavaScript code to the JavaScript engine for processing.
The JavaScript engine/JavaScript Interpreter comprises both an Interpreter and a Just in Time compiler . Additionally, the overall execution of the JavaScript is a 5 step process, as shown in the below image: Working of JavaScript Interpreter

  1. JavaScript Engine Loads Source Code.
  2. The interpreter starts the application.
  3. The Compiler receives code.
  4. The compiler starts optimization and compilation.
  5. The compiler incrementally optimizes the code.

Now when we talk about JavaScript engines, each of the browsers take their pre-installed engines. Below are few of the JavaScript engines adult and used by some major browsers:

  • V8 Engine : This engine is developed by Google, which is one of the most used Engines in chrome, chromium, and even in NodeJS.
  • Spider Monkey : Mozilla developed this engine used in the Firefox browser.
  • JavaScriptCore : This engine southward developed by Apple used in the Safari browser.
  • Chakra : Microsoft developed this engine used in the Edge browser and cyberspace explorer.
  • Hermes Engine : Facebook adult this engine used in android apps.

How to embed and run JavaScript in a web-browser?

The spider web browser is commonly expecting HTML, so you must specifically tell the browser when JavaScript is coming by using the <script> tag. The <script> tag is regular HTML tag. In addition to this, it acts like a switch that, in effect, says, " Hey, web browser, here comes some JavaScript code; you don't know what to do with it, and so mitt it off to the JavaScript interpreter ". When the web browser encounters the endmost </script> tag, information technology knows it'due south reached the terminate of the JavaScript program and can get back to its normal duties. Let's understand in following sections, how the JavaScript code embeds inside an HTML file:

How to embed and execute JavaScript in the HTML <trunk> tag?

The <script> Html tag enables the integration of JavaScript code straight within the <body> tag.The JavaScript code will prevarication under <script> tag, and the browser automatically executes the script once a page is loaded.

The below code demonstrate the " Hello world! " plan using JavaScript written direct inside <body> tag.

                      <html>            <head>            <title>My First Program</title>            </caput>            <body>            <script              language              =              "javascript"              type              =              "text/javascript">                          document.write("Hello Globe!")                        </script>            </trunk>            </html>                  

Open up any text editor like notepad++ and type the above lawmaking. Save the file with name helloworld.html and open it in any browser (Chrome, Firefox, or IE). It should show the output as:

 Program to run JavaScript in the body tag of HTML

As seen in the higher up example, " document.write " is a office used to write information into the Html page. When nosotros open an Html file in the browser, the JavaScript nowadays nether script tag executes. We will discuss more details above other functionalities, like write in the DOM Manipulation commodity.

How to embed and run JavaScript in HTML <head> tag?

The <script> html tag tin be used to ascertain a function under the <head> tag of HTML. The JavaScript code will lie under <script> tag in a function which tin be invoked inside the <body> tag of HTML.

The below lawmaking demonstrate the " Hello earth! " program using JavaScript written under the <caput> tag.

                      <html>            <caput>            <championship>My Outset Programme</title>            <script              language              =              "javascript"              type              =              "text/javascript">                          function              myFunction() {              certificate.write("Hello World!");  	         }                        </script>            </head>            <torso>            <script>myFunction()</script>            </body>            </html>                  

Write the above code in a text editor and save the file with the name helloworld2.html . Later open it in any browser.

 Program to run JavaScript in the head tag of HTML

In the to a higher place case, we created a function in the header and called that office in the torso tag. At this moment, don't worry about what is a function and it'southward usage because we will cover it in functions commodity.

How to embed an external JavaScript file in HTML?

Apart from the to a higher place ways of integrating JavaScript in the HTML, nosotros can save the JavaScript every bit a separate script file with .js extension and include the same inside the HTML lawmaking using the src attribute of the <script> tag. By doing this, nosotros can reuse the same JavaScript code in multiple HTML files.

The below code demonstrates the " Howdy world! " plan using JavaScript written as an external file.

                      office            myFunction() {            document.write("Hi World!");  }                  

Save the in a higher place JavaScript code every bit ext.js file. Invoke the higher up JavaScript in the below HTML using the src attribute of <script> tag.

                      <html>            <caput>            <title>test</title>            </caput>            <body>            <script              src="ext.js">            </script>            <script              type="text/javascript">myFunction()</script>            </body>            </html>                  

 Hello World3

Notation : The src aspect will specify the accented path of the JavaScript file.

In the to a higher place example, we have created javascript in a split up file and used that file in Html with the help of an src tag, which imports JavaScript code in the provided file at runtime.

How to diagnose an fault in JavaScript?

When the website loads but does not display correctly, this is due to a coding error on the site. Usually, JavaScript causes it or CSS errors. If y'all have JavaScript on your website that is non working, you tin diagnose them past using your browsers " Error Console ". Each browser has a congenital-in " Error Console " for diagnosing scripting errors on your site.

To sympathise the " Error Panel " in detail, let'south consider the code snippet below. Whereby we have explicitly introduced an fault past removing the double quotes from the string " Hello Earth! " while passing the same to the document.write() method:

                      <html>            <head>            <title>My Showtime Plan with Error</title>            </caput>            <body>            <script              language              =              "javascript"              blazon              =              "text/javascript">                          document.write(Howdy              Globe!)                        </script>            </body>            </html>                  

Save the file with name firstProgramWithError.html and open it in a browser. Information technology should testify the output as:

 JS Program With Error

As we can see from the above screenshot that nothing is there on the HTML page. Equally a consequence, this makes it skeptical that there's something incorrect, every bit the output is not as expected. So, how to check what the error is? 1 tin check this error with the help of the browser'due south " Error Panel ". Let's consider nosotros are using " Chrome " viewing our plan. So, we tin open the " Fault Console " in chrome using the following steps to view the error raised past our program:

1. Firstly, Right-click anywhere in the browser's viewport to open the context-menu as beneath:

 Context menu in Chrome

2. Secondly, click on the "Inspect" item in the Context Carte du jour." It will open up chrome-dev tools. Select the "panel" tab as highlighted in below screenshot:

 Console tab in Chrome

3. Finally, if we over again open the in a higher place firstProgramWithError.html file in chrome, it shows the output equally below:  Error console in JS

4. So, it shows the error in the "Console" tab and mentions the error is in "line viii" of the file.

Therefore, a user tin can speedily diagnose any mistake, if at that place, in the JavaScript lawmaking. Similarly, other browsers besides provide the " Mistake Console " windows. Which, in plow, diagnose the JavaScript errors whenever an fault arises in a specific code of JavaScript.

Key Takeaways

  • A developer can use <script> tag of HTML to write JavaScript code inside an HTML file.
  • In addition to this, the <script> tag can be integrated inside various sections like <trunk>, <head> of the HTML file.
  • *Finally, the " Fault Console " windows of browsers can diagnose any JavaScript errors

Let'south now motion to the next article where nosotros will acquire near concepts of data types and variables in JavaScript .