The problem of adding parentheses when calling a function in JS

Source: Internet
Author: User

In fact, summed up as follows:
The function must be bracketed if it is to invoke it for execution. At this point, the function () is actually equal to the function's return value. Of course, some have no return value, but have performed the behavior in the body of the function, this is the fundamental, that is, as long as the parentheses, will execute the function body code.
Without parentheses, the function name is used as a pointer to the function, which is not the result of the function, because the function body code will not be run. It simply passes the address where the body of the function is located and, when needed, finds the function body to execute.

So in general, we are using the reason that is without brackets. This is also due to the two semantics of the parentheses, because the parentheses are "function call operators", which is equivalent to executing such a function, so the resulting problem is understood after understanding.


In addition: In addition to the two sides without parentheses, you can also add brackets on both sides to achieve a copy of the function, rather than execute the function, if the left without parentheses to the right of the parenthesis, is actually equivalent to produce a property rather than a method, when called only with the property name or function name, Instead of using the function call operator parentheses, because it is equivalent to a property, of course, it can be called by a function call, plus parentheses, take the example is written Person.sayhello =sayhi (), When calling SayHello, you can use Person.sayhello or Person.sayhello () directly, both of which achieve the same effect.

Baidu knows the answer:

The function must be bracketed if it is to invoke it for execution. At this point, the function () is actually equal to the function's return value. Of course, some have no return value, but have performed the behavior in the body of the function, this is the fundamental, that is, as long as the parentheses, will execute the function body code. Without parentheses, the function name is used as a pointer to the function, which is not the result of the function, because the function body code will not be run. It simply passes the address where the body of the function is located and, when needed, finds the function body to execute.

The problem of adding parentheses when calling a function in JS

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.