你听过js中函数执行吗

一、主动执行函数。

众所周知,函数一般有下面几种表现方式:
第一种:函数声明

function demo_one(){
console.log("this is demo-one");
 }


第二种:函数表达式

 var demo=function(){
    console.log("this is demo-two");
     }



第三种:匿名表达式

 function(){
      console.log("this is demo-three");
 }
 var name="maomin";
  function main(){//这里是声明一个叫mian函数,简单的叫做函数体,现在还不是函数表达式。
     console.log(this.name);//输出 maomin
 }
main();



这里的main函数称为主动执行函数,什么叫主动执行函数呢?就是立即执行的函数啊。显然,最初声明的函数体如果没有下面的mian(),就不能执行,这里的main()叫做函数调用,先声明后调用。

 var main=function(){
     console.log(this.name);//输出maomin,这里是函数表达式。
 }
main();



首先一个函数体要想执行必须先成为函数表达式,成为函数体之后在函数体后面加上()就可以执行了。下面是几个demo.
1.

!function main(){
     console.log("this is !");
 }();
// or
!function(){
     console.log("this is wuming");
      }



 (function(age){
     console.log(age);
 })(21);
// or
(function(money){
     console.log(money);
 }(100));



以上两种是将函数声明通过(、!、+、-,转换成函数表达式,转换成函数表达式就可以在后面加上(),就可以立即执行了。

总之,函数体要想执行那个首先成为函数表达式,然后在函数体后面加上()调用它,

二、延时触发函数。

var a=document.querySelector("body");
 a.onclick=function(){
     alert("被点击了!")
 }
 var time=setInterval(function(){
     var name="maomin";
     console.log(this.name)
 },2000)



当事件被执行时,函数才被执行。这叫做延时触发函数



作者:Vam的金豆之路

主要领域:前端开发

我的微信:maomin9761

微信公众号:前端历劫之路