"Turn" a typical JavaScript face question

Source: Internet
Author: User

Issue 1: scope (SCOPE)
1 (function() {2   "use strict"; 3   var a = b = 5; 4 })(); 5 Console.log (b);

What does the console print?

Answer:

The above code will print out 5 .

The pitfall of this problem is that there are two assignments in the immediate execution function expression (iife), but the variables are a declared using keywords var . This means that it a is a local variable of the function. In contrast, it b is assigned to the global scope (that is, the global variable).

Another pitfall of this problem is that "strict mode" () is not used in the function ‘use strict‘; . If strict mode is turned on, then the code will error "uncaught referenceerror:b is not defined". Keep in mind that if this is the expected behavior, strict mode requires that you explicitly refer to the global scope. So, you need to write like this:

1 (function  () {2   ' use strict '; 3   var a = b = 5; 4 }) (); 5 Console.log (b);

Note: In strict mode, Firefox is still output 5, and 360 browser only error is "uncaught referenceerror:b are not defined".

Go to typical JavaScript face question

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.