
正文
js调用函数不写括号调用,js调用函数的格式
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JavaScript中函数调用时,什么时候加括号,什么时候不加括号?
1、函数调用的时候是一定带括号的(不管有没有参数)比如说fun1是个函数:x = fun1()这是把fun1的运行结果赋值给变量x 如果没有加括号, 那就肯定不是调用,而是把函数本身赋值给另一个对象变量,相当于把自己复制(或者说克隆)出另一个新拷贝。
2、带括号是函数,不带括号是方法,如果是函数,那么带()的立即执行。而不带()的可以理解为C里的指针,指向这个函数。
3、函数名后面加括号,是表示要立即执行这个函数,然后返回函数的运行结果;不加括号,则代表函数本身(函数本身也是一个对象)。
4、document.all.myimy.onmouseover=img1;这个表示onmouseover这个动作发生的时候执行img1这个方法;document.all.myimy.onmouseover=img1();这个标识onmouseover则个动作放生的时候执行img1()这个方法的返回值代表的方法。
5、那么到底在使用一个函数时需不需要加上()呢?函数只要是要调用它进行执行的,都必须加括号。此时,函数实际上等于函数的返回值或者执行效果,当然,有些没有返回值,但已经执行了函数体内的行为,就是说,加括号的,就代表将会执行函数体代码。
6、if(e&&e.stopPropagation){ 检查e是否为可用对象,并检查e对象有没有stopPropagation这个方法。e.stopPropagation() 才是执行方法。
相关问答
Q1: 什么时候js的函数调用需要括号什么时候不需要
1、函数调用都要括号的。document.onkeydown=changeFocus;是个赋值语句,不是函数调用。
2、函数调用必须加括号,即使无参数,不然怎么叫做函数调用呢。但是当用到return语句时,要注意function()和function的区别,前者返回的是函数执行完的值, 后者直接返回的是函数【这个通常用于把函数当做参数传递另一个函数中去】。
3、函数调用的时候是一定带括号的(不管有没有参数)比如说fun1是个函数:x = fun1()这是把fun1的运行结果赋值给变量x 如果没有加括号, 那就肯定不是调用,而是把函数本身赋值给另一个对象变量,相当于把自己复制(或者说克隆)出另一个新拷贝。
Q2: JS中函数名后面的括号加与不加的区别和作用
1、如果函数名后面加上圆括号就表示立即调用(执行)这个函数里面的代码(花括号部分的代码)。另外函数声明和函数表达式在私有作用域写法方面也会在函数体后面加圆括号表示立即调用这个函数,题主可以参看JS的模仿块级作用域的知识。
2、最后总结一下:函数后面带括号,表示要立即执行这个函数并返回执行结果;函数不带括号,则代表函数本身这个对象。
3、加括号代表执行这个方法,不加括号代表把这个函数赋值给某个变量。..以下来自百度 function al(){ alert(我擦)} 此时,al代表这个函数的对象,al()就是直接运行了。var nfun=al;就是让nfun也指向了al,此时nfun()就相当于al()。
4、返回的匿名函数,此时有一个闭包,则每次调用 aaa 时都访问的同一个 a,aaa() 第一次运行结果为 1,第二次为2 而 bbb 将是将 hi 这个函数名赋值给它,则调用 bbb() 后返回一个函数表达式,即function(){console.log(a++)};js里调用函数时,函数名带括号和不带括号的区别 ,简单的理解。
5、为事件绑定事件函数时不需要带括号,只需要指定函数名。带括号是调用一个函数,将函数的返回值绑定为事件的处理函数。
6、带括号是函数,不带括号是方法,如果是函数,那么带()的立即执行。而不带()的可以理解为C里的指针,指向这个函数。
Q3: 浅谈js中调用函数时加不加括号的问题
如果没有加括号, 那就肯定不是调用,而是把函数本身赋值给另一个对象变量,相当于把自己复制(或者说克隆)出另一个新拷贝。比如 fun2 = fun1 这样的话,fun2就相当于fun1,调用fun2也就相当于调用fun1,等于有了两个完全一样的函数。这是因为函数本身也是一个对象,而对象就意味着是可以复制的。
函数调用必须加括号,即使无参数,不然怎么叫做函数调用呢。但是当用到return语句时,要注意function()和function的区别,前者返回的是函数执行完的值, 后者直接返回的是函数(这个通常用于把函数当做参数传递另一个函数中去)。JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。
function fun(){ return 5 } var a=fun var b=fun()a是fun函数,b是5 JS中我们把以上代码加粗的部分叫做函数,函数是一种叫做function引用类型的实例,因此函数是一个对象。对象是保存在内存中的,函数名则是指向这个对象的指针。
Q4: 基于js里调用函数时,函数名带括号和不带括号的区别
1、JS中我们把以上代码加粗的部分叫做函数,函数是一种叫做function引用类型的实例,因此函数是一个对象。对象是保存在内存中的,函数名则是指向这个对象的指针。var a = fun 表示把函数名fun这个指针拷贝一份给变量a,但是这不是指函数本身被复制了一份。
2、而 bbb 将是将 hi 这个函数名赋值给它,则调用 bbb() 后返回一个函数表达式,即function(){console.log(a++)};js里调用函数时,函数名带括号和不带括号的区别 ,简单的理解。
3、最后总结一下:函数后面带括号,表示要立即执行这个函数并返回执行结果;函数不带括号,则代表函数本身这个对象。
Q5: js绑定事件函数带括号和不带括号执行效果有什么不同
1、加括号代表执行这个方法,不加括号代表把这个函数赋值给某个变量。..以下来自百度 function al(){ alert(我擦)} 此时,al代表这个函数的对象,al()就是直接运行了。var nfun=al;就是让nfun也指向了al,此时nfun()就相当于al()。
2、返回的匿名函数,此时有一个闭包,则每次调用 aaa 时都访问的同一个 a,aaa() 第一次运行结果为 1,第二次为2 而 bbb 将是将 hi 这个函数名赋值给它,则调用 bbb() 后返回一个函数表达式,即function(){console.log(a++)};js里调用函数时,函数名带括号和不带括号的区别 ,简单的理解。
3、带括号是函数,不带括号是方法,如果是函数,那么带()的立即执行。而不带()的可以理解为C里的指针,指向这个函数。
4、复制)无数个指向上海市的路标,但上海市本身不会被复制。如果函数名后面加上圆括号就表示立即调用(执行)这个函数里面的代码(花括号部分的代码)。另外函数声明和函数表达式在私有作用域写法方面也会在函数体后面加圆括号表示立即调用这个函数,题主可以参看JS的模仿块级作用域的知识。
关于js调用函数不写括号调用和js调用函数的格式的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







