JavaScript Use Strict

You are Here:

JavaScript Use Strict

"use strict" is a string that makes your program or function follow a strict operating context.

It means, the errors which were being ignored by the compiler, will now throw exception messages.

The purpose of "use strict" is to indicate that the code should be executed in "strict mode".

Advantage of using use strict

The following are the three main advantage of using use strict

  • Prohibits some syntax likely to be defined in future versions of ECMAScript.
  • Fixes mistakes that make it difficult for JavaScript engines to perform optimizations.
  • Eliminates some JavaScript silent errors by changing them to throw errors.

Initialize Undeclared Variable

In strict mode, you cannot initialize a value to undeclared variables.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; x = 1; document.write("x = "+x); </script> </body> </html>

Delete Variable

The strict mode will throw an error when you are trying to delete a variable instead of deleting a property of an object.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; var x = 1; delete x; document.write(x); </script> </body> </html>

Duplicate parameter

Duplicating parameter name is not allowed in strict mode.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; function myFunction(x, x){ document.write("Parameter 1 = "+ x); document.write("<br>Parameter 2 = "+ x); } myFunction(1, 2); </script> </body> </html>

Octal literals

Octal literals are not allowed in strict mode.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; var x = 010; document.write(x); </script> </body> </html>

Octal Escape Sequences

Octal escape sequences are not allowed in strict mode.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; var x = "\010"; document.write(x); </script> </body> </html>

Read Only Object

Read only object properties are not allowed to change its value in strict mode.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; var bike = { company: "honda", model: "CBR 1000RR", color: "Red" }; Object.defineProperty(bike, "company", {writable: false}); bike.color="Black"; document.write(bike.color); bike.company = "Harley Davidson"; document.write(bike.company); </script> </body> </html>

eval() Function

eval() is not allowed to create variables in the scope under Strict Mode.

Example

HTML Online Editor
<!DOCTYPE html> <html> <body> <script> "use strict"; eval("var x = 2"); document.write(x); </script> </body> </html>

Reminder

Hi Developers, we almost covered 97% of JavaScript Tutorials with examples for quick and easy learning.

We are working to cover every Single Concept in JavaScript.

Please do google search for:

Join Our Channel

Join our telegram channel to get an instant update on depreciation and new features on HTML, CSS, JavaScript, jQuery, Node.js, PHP and Python.

This channel is primarily useful for Full Stack Web Developer.

Share this Page

Meet the Author