快速业务通道

跨越边界: JavaScript语言特性 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
ody 之内(目前并未指定任何 body,但浏览 器能接受不规则的 HTML,并且整个页面都默然作为一个 body 被处理)。页面一旦加载,JavaScript 就 会立即执行。

图 1. Hello, world

跨越边界: JavaScript语言特性 - 编程入门网

跨越边界: JavaScript语言特性(2)

时间:2011-07-22 IBM Bruce Tate

如果要延迟执行,可以在 HTML <head> 元素声明 JavaScript 函数,如清单 2 所示:

清单 2. 延迟执行

<head>   <script type=''text/javascript''>     function hello() {       alert(''Hello, World.'')     }   </script> </head> <body>   <button onclick="hello();">Say Hello</button> </body>

将清单 2 中的代码输入到一个 HTML 文件,在浏览器内加载该文件,单击 Say Hello 按钮,结果如 图 2 所示:

图 2. 延迟执行

跨越边界: JavaScript语言特性 - 编程入门网

高阶函数

从 清单 2,可以大致体会到一些 JavaScript 在操纵函数方面的能力。将函数名称传递给 HTML button 标记并利用 HTML 的内置事件模型。使用 JavaScript 时,我会经常在变量或数组中存储函数( 在本文后面的 对象模型 一节,您会看到 JavaScript 对象模型策略大量使用了此技巧)。例如,查看一 下清单 3:

清单 3. 用变量操纵函数

<head>   <script type=''text/javascript''>     hot = function hot() {       alert(''Sweat.'')     }     cold = function cold() {       alert(''Shiver.'')     }     function swap() {       temp = hot       hot = cold       cold = temp         alert(''Swapped.'')     }   </script> </head> <body>   <button onclick="hot();">Hot</button>   <button onclick="cold();">Cold</button>   <button onclick="swap();">Swap</button> </body>

函数是 JavaScript 中的一类对象,可以自由地操纵它们。首先我声明两个函数:hot 和 cold。并分 别在不同的变量存储它们。单击 Hot 或 Cold 按钮会调用对应的函数,生成一个告警。接下来,声明另 一个函数用来交换 Hot 和 Cold 按钮的值,将此函数与第三个按钮关联,该按钮显示如图 3 所示的告警 :

图 3. 操纵函数

跨越边界: JavaScript语言特性 - 编程入门网

跨越边界: JavaScript语言特性(3)

时间:2011-07-22 IBM Bruce Tate

这个例子说明可以像处理其他变量一样处理函数。C 开发人员很容易将此概念看作是函数指针 功能, 但 JavaScript 的高阶函数的功能更为强大。该特性让 JavaScript 程序员能够像处理其他变量类型一样 轻松处理动作或函数。

将函数用作函数的参数,或将函数作为值返回,这些概念属于高阶函数的领域。清单 4 对 清单 3 做 了一点点修改,显示了能返回函数的高阶函数:

清单 4. 高阶函数

<head>   <script type=''text/javascript''>     function temperature() {       return current     }     hot = function hot() {       alert(''Hot.'')     }     cold = function cold() {       alert(''Cold.'')     }     current = hot     function swap() {       if(current == hot) {        current = cold       } else {        current = hot       }     }   </script> </head> <body>   <button onclick="funct = temperature() ();">Temperature</button>   <button onclick="swap();"&

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号