您的位置: 首页 > 技术文档 > 网页制作 > javascript的函数
[效果]JS折叠菜单 回到列表 ajax的缺点
 javascript的函数

作者:Sheneyan 时间: 2006-07-26 文档类型:翻译 来自:蓝色理想

第 1 页 javascript的函数 [1]
第 2 页 javascript的函数 [2]
第 3 页 javascript的函数 [3]
第 4 页 javascript的函数 [4]
第 5 页 javascript的函数 [5]
第 6 页 javascript的函数 [6]
第 7 页 javascript的函数 [7]
第 8 页 javascript的函数 [8]

函数:对象

函数是javascript中的一种特殊形式的对象。它是第一个[b〕类数据类型(class data type)。这意味着我们能够给它增加属性。这里有一些需要注意的有趣观点:

对象的创建

就像刚才提及的,当我们定义一个函数时,javascript实际上在后台为你创建了一个对象。这个对象的名称就是函数名本身。这个对象的类型是function。在下面的例子,我们也许不会意识到这一点,但我们实际上已经创建了一个对象:它叫做Ball。

Example 1

CODE:
function Ball()       // 也许看起来有点奇怪,但是这个声明
{                     // 创建了一个叫做Ball的对象
  i=1;
}                    
alert(typeof Ball);     // 结果 "function"

我们甚至能将这个对象的内容打印出来而且它会输出这个函数的实际代码,Example2: 点击 alert(Ball);来看看Ball的内容。

属性的添加

我们能够添加给Object添加属性,包括对象function。因为定义一个函数的实质是创建一个对象。我们能够“暗地里”给函数添加属性。比如,我们这里定义了函数Ball,并添加属性callsign。

CODE:
function Ball()       // 也许看起来有点奇怪,但是这个声明
{                     // 创建了一个叫做Ball的对象,而且你能够
}                     // 引用它或者象下面那样给它增加属性
Ball.callsign="The Ball"; // 给Ball增加属性
alert(Ball.callsign); // 输出 "The Ball"

指针

因为function是一个对象,我们能够为一个function分配一个指针。如下例,变量ptr指向了对象myFunction。

CODE:
function myFunction(message)
{
  alert(message);
}
var ptr=myFunction;  // ptr指向了myFunction
ptr("hello");         // 这句会执行myFunction:输出"hello"

我们能够运行这个函数,就好像这个函数名已经被指针名代替了一样。所以在上面,这行ptr("hello"); 和myFunction("hello");的意义是一样的。

指向函数的指针在面向对象编程中相当有用。例如:当我们有多个对象指向同一个函数的时候(如下):

Example 4A

CODE:
function sayName(name)
{
  alert(name);
}
var object1=new Object();      // 创建三个对象
var object2=new Object();
var object3=new Object();
object1.sayMyName=sayName;       // 将这个函数指派给所有对象
object2.sayMyName=sayName;
object3.sayMyName=sayName;
 
object1.sayMyName("object1");    // 输出 "object1"
object2.sayMyName("object2");    // 输出 "object2"
object3.sayMyName("object3");    // 输出 "object3"

因为只有指针被保存(而不是函数本身),当我们改变函数对象自身的时候,所有指向那个函数的指针都会发生变化。我们能够在底下看到:

Example 5:

CODE:

function myFunction()
{
  alert(myFunction.message);
}
myFunction.message="old";
var ptr1=myFunction;                 // ptr1 指向 myFunction
var ptr2=myFunction;                 // ptr2 也指向 myFunction

ptr1();                     // 输出 "old"
ptr2();                              // 输出 "old"

myFunction.message="new";

ptr1();                     // 输出 "new"
ptr2();                              // 输出 "new"

出处:蓝色理想
责任编辑:moby

上一页 javascript的函数 [2] 下一页 javascript的函数 [4]

◎进入论坛网页制作网站综合版块参加讨论

相关文章 更多相关链接
[效果]JS折叠菜单
CSS+JS构建的图片查看器
一实用的Javascript类库
怎么用javascript进行拖拽
无限级JavaScript下拉列表菜单
作者文章 更多作者文章
ajax的缺点
用Google Sitemaps帮助你SEO
滑动门菜单技术
jscript/javascript条件编译
如何使用ajax开发web应用程序
热门搜索:CSS Fireworks 设计比赛 网页制作 Dreamweaver Studio8 Flash
站点最新 站点最新列表
十步学会用css建站(全)
栅格:灵活应变
栅格:一以贯之
美化段落文本 Ⅱ
元素层叠级别及z-index剖析
标记语言——应用CSS
小季教你画漫画第一课
对设计/设计师/设计行业的感受
曹鹏 SEO 视频教程
曹鹏 CSS 视频教程
栏目最新 栏目最新列表
火星人的耳机
公司正式宣布创业失败
用corelDEAW 12打造唇膏
二行代码解决全部网页木马
一行代码解决iframe挂马
Photoshop制作星空爆炸效果
CorelDraw 12打造休闲裤
Firework如何画特殊的切角图形
Firework打造韩式风格的手提袋
flash实例:打造佛光效果
 
>> 分页 首页 前页 后页 尾页 页次:3/81个记录/页 转到 页 共8个记录

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文总共有 7 条评论,现在显示最新的 5 条。评分:- llllllllllllllllllll + 评分人数: 3 ,平均分: 5.00


tao7love Publish at 2008-6-2 14:54:51
JavaScript里有指针,真的让人郁闷,这里的指针好比一颗老鼠屎,坏了一批JavaScript fanc的好心情,望楼主中心整理,重新发布。!
yoyoyo1 Publish at 2008-6-2 11:36:45
<style>div{
background:green url('javascript:function showMe(a){alert(a)};showMe("John")');
}</style>


<div style="background:url('alert(a script run here in IE.)')">a div here..</div>


lp840609 Publish at 2006-8-17 17:55:38 评分5
相当的好,鼓掌拉
honk2008 Publish at 2006-7-27 18:29:17 评分5
经典!
mirycat Publish at 2006-7-26 15:30:48
不喜欢在脚本里这里指针那里指针的叫. 脚本里哪来的指针
明明是引用干嘛要叫指针. 受不了

查看全部评论

您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
大师之路--Photoshop 完全解析
《超越CSS》新书上市
Don't Make Me Think 第2版
HTM与CSS入门经典(第7版)
《FLASH MX2004网站开发精粹》
《CSS入门经典》
《设计师谈网页设计思维》
作品集 更多内容

给老婆做的QQ登陆界面 中国移动通讯海报 蓝媚 涂鸦 黑色个人网站 Doodle&nbsp;Girl 点格城市 湖南站&#45;副本