《HTML5与JavaScrip程序设计》项目四 JavaScript函数 教学课件.pptVIP

《HTML5与JavaScrip程序设计》项目四 JavaScript函数 教学课件.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

05思考与练习1.学习本课后描述一下如何定义一个函数并调用该函数。2.全局变量和局部变量有什么区别?05思考与练习打开前端开发工具HBuilder,在项目subject01中新建一个HTML文件:exercise04-1.html。模仿任务实施编写代码实现定义函数myFunction,参数a和b,返回a和b的积,最终显示效果如图4-3所示:图4-3简易计算函数项目四Javascript函数任务一函数的定义与调用任务三函数的嵌套与递归01小明在学习JavaScript做HTML5网站时,发现函数是非常好用的,但是函数有多种类型,不同的函数有不同的功能,于是他就在任务一学习的基础上,想进一步学习,于是就学习匿名函数和闭包函数。现在我们跟着小明一起学习匿名函数和闭包函数。完成任务任务描述能理解匿名函数的概念。能理解闭包函数的概念。会在开发HTML页面中应用匿名函数。会在开发HTML页面中应用闭包函数。能力目标知识目标学习目标思政目标模块化工程法。化繁为简。03知识链接匿名函数就是没有名字的函数,有时候也称为拉姆达(lambda)函数。匿名函数是一种强大的令人难以置信的工具,其用途非常之多,来看看下面这个典型的函数声明:functionfunctionName(arg0,arg1,arg2){//函数体}既可以像上面这样声明函数,也可以像下面这样以函数表达式的形式定义函数:varfunctionName=function(arg0,arg1,arg2){//函数体};03知识链接虽然这两个例子在逻辑上等价,但它们之间还是存在一些区别。当然,函数声明与函数表达式之间的主要区别,就是前者会在代码执行以前被加载到作用域中,而后者则是在代码执行到哪一行的时候才会有定义。另一个重要的区别是函数声明会给函数指定一个名字,而函数表达式则是创建一个匿名函数,然后将这个匿名函数赋给一个变量。换句话说,上面第二个例子创建了带有三个参数的匿名函数,然后把这个匿名函数赋给了变量functionName,但是,并没有给匿名函数指定名字。像下面这样写一个匿名函数也是可以的:function(arg0,arg1,arg2){//函数体}03知识链接以前面的createComparisonFunction()函数为例:functioncreateComparisonFunction(propertyName){returnfunction(object1,object2){varvalue1=object1[propertyName];varvalue2=object2[propertyName];if(value1value2){return-1;}elseif(value1value2){return1;}else{return0;}};}在这个例子中,突出的那两行代码是内部函数(一个匿名函数)中的代码,这两行代码访问了外部函数中的变量propertyName,即使这个内部函数被返回了,而且是在其他地方被调用了,但它仍然可以访问变量propertyName。之所以还能够访问这个变量,是因为内部函数的作用域链中包含createComparisonFunction()的作用域。要彻底搞清楚其中的细节,必须从理解函数第一次被调用的时候都会发生什么入手。03知识链接123然后,使用this.arguments和其他命名参数的值来初始化函数的活动对象(activationobject)。但在作用域链中,外部函数的活动对象始终处于第二位,外部函数的外部函数的活动对象处于第三位,...直至作为作用域链终点的全局执行环境。在函数执行过程中,为读取和写入变量的值,就需要在作用域中查找变量当某个函数第一次被调用时,会创建一个执行环境(executioncontext)及相应的作用域链,并把作用域链赋值给一个特殊的内部属性(即[[Scope]])从作用域链理解闭包函数03知识链接来看下面的例子:该代码先定义了compare()函数,然后又在全局作用域中调用了它,当第一次调用compare()时,会创建一个包

您可能关注的文档

文档评论(0)

土豆 + 关注
实名认证
文档贡献者

~

1亿VIP精品文档

相关文档