JavaScript question detail
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
- When you use Octal syntax
var n = 022;
- Using
withstatement - When you use delete operator on a variable name
- Using eval or arguments as variable or function argument name
- When you use newly reserved keywords
- When you declare a function in a block and access it from outside of the block
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.