InterviewHubPRO
Section Overview
Q345

Question 345 of 521

Part 6: Async Internals, Memory, Microtasks & Web APIs (329 - 403)

66%
JavaScript Internals (521 Qs)•Part 6: Async Internals, Memory, Microtasks & Web APIs (329 - 403)

What are the list of cases error thrown from non-strict mode to strict mode

When you apply 'use strict'; syntax, some of the below cases will throw a SyntaxError before executing the script

  1. When you use Octal syntax
javascript
  var n = 022;
  1. Using with statement
  2. When you use delete operator on a variable name
  3. Using eval or arguments as variable or function argument name
  4. When you use newly reserved keywords
  5. When you declare a function in a block and access it from outside of the block
javascript
  if (someCondition) {
    function f() {}
  }
  f(); // ReferenceError: f is not defined

Hence, the errors from above cases are helpful to avoid errors in development/production environments.