| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1548 人关注过本帖, 1 人收藏
标题:为什么用函数本身不能执行?
只看楼主 加入收藏
nbh002
该用户已被删除
收藏(1)
 问题点数:0 回复次数:9 
为什么用函数本身不能执行?
提示: 作者被禁止或删除 内容自动屏蔽
搜索更多相关主题的帖子: 函数 function var alert return 
2008-06-05 13:35
nbh002
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-05 17:30
渚薰
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:1132
专家分:0
注 册:2006-8-6
收藏
得分:0 
js中函数名,实际可以看成是一个函数指针

function a() {}
的定义,等同于
var a = function() {}

a是变量, function() {}称为匿名函数,a引用这个匿名函数。
或者,还可以这样定义
var a = new Function('func body');

使用a和使用其他变量一样,所以当要执行a所指向的函数时,就可以用括号来调用这个函数a();

lz第一个script中,a函数运行后返回b,b是函数指针,仅仅只是返回而已,并没有被执行
第二个script中,a函数运行后返回b给c,b和c都指向同一个函数,所以运行c后,等到想要的结果。

另外,变量只是起到引用左右,匿名函数在定义后可以直接执行,即
(function() {})();
等价于
var a = fucntion() {};
a();
不过要注意,直接运行匿名函数,函数外的一对括号不能少,之后再跟上一对括号用于执行。

个人ajax技术专题站: " target="_blank">http://www. 我不会闲你烦,只会闲你不够烦!
2008-06-06 09:23
nbh002
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-06 16:46
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
...哇,我剛準備學的
我看了這個帖子,我有不想學的衝動了
這不是亂套了
函數都可以實例化

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2008-06-06 16:50
nbh002
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-07 09:07
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
收藏
得分:0 
不是不能执行, 而是没有执行, 这样也就可以了:

a()();
2008-06-12 10:18
hmhz
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:30
帖 子:1890
专家分:503
注 册:2006-12-17
收藏
得分:0 
这样也可以 onload=a();

[编程论坛] ASP超级群:49158383  敲门暗号:ASP编程
龍艺博客 http://www.
2008-06-15 10:19
bigzerg
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2008-5-19
收藏
得分:0 
受益良多!
2008-07-10 18:40
快速回复:为什么用函数本身不能执行?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033443 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved