关于js函数括号该不该加的问题

先看图,求助大家一个问题,是关于函数括号的新手问题,就是上面的那个onblur=t1();和下面那个onblur=t1为什么上面要用括号,下面不用括号,有什么区别,还有就... 先看图,求助大家一个问题,是关于函数括号的新手问题,就是上面的那个 onblur=t1( ); 和下面那个 onblur =t1 为什么上面要用括号,下面不用括号,有什么区别,还有就是什么时候要用括号,什么时候不用括号啊?求各位给个帮助。 展开
 我来答
小雨和4
2014-04-20 · TA获得超过314个赞
知道小有建树答主
回答量:219
采纳率:0%
帮助的人:117万
展开全部
function t1()
这个是函数声明,空括号表示无参,不能省略。

在使用的时候

无()传递的是函数对象
有()传递的是函数返回值

例如:function test(){return 1}

var x=test();// x =1,
----------------------------------
var y=test;//这时y等同于test函数
x=y();// x也等于1

////////////////////////
别采纳我的了,我和林业999的意思差不多,没看到他的
林业9999
2014-04-20 · TA获得超过224个赞
知道小有建树答主
回答量:216
采纳率:100%
帮助的人:107万
展开全部
不加括号的是赋值。。比如:

function test()
{
alert(1);

}

var d = test; 相当于

var d = function()
{
alert(1);
}

以后你调用test这个方法就可以直接用d();来调用了。。。

加括号的在html代码里也是赋值。。但在js里就是执行某个方法。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友090def6
2014-04-20 · TA获得超过2211个赞
知道小有建树答主
回答量:558
采纳率:100%
帮助的人:707万
展开全部
<input ...onblur = “t1();" />
input标签的onblur = “t1();" 表示失去焦点时要执行的js代码,2个引号中间的就是代码,你这里是执行t1()方法,所以要加括号

xxxx.onblur = t1
表示给对象的属性复制,你这里通过getElementsByName取到了对象,然后把 函数t1 赋值给onblur的属性,而不是执行他

注:在js中方法也属于对象,方法名称就相当变量名
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式