一、前言

       接着上一篇的内容,继续学习JavaScript。

二、内容

      函数的声明

function functionName(arg0,arg1,arg2){
//函数体
}

递归

var factorial = (function f(num){
if(num<=1){
return 1;
}
else{
return num*f(num-1);
}
});

闭包

//闭包与变量
闭包只能取得包含函数中任何变量的最后一个值。闭包所保存的是整个变量对象,而不是某个特殊的变量 function createFunctions(){
var result = new Array();
for(var i=0; i<10; i++){
return[i] = function(){
return i;
}
}
return result; //返回的数组每一个都是10
} function createFuntions(){
var result = new Array();
for(var i=0; i<10; i++){
result[i] = function(num){
return function(){
return num;
}
}(i);
}
return result;
}

块级作用域

(function(){
//这里是块级作用域
})(); 将函数声明包含在一对圆括号中,表示它实际上是一个函数表达式。
紧随其后的另一对圆括号会立即调用这个函

最新文章

  1. MyBatis的一系列问题的处理(遍历Map集合和智能标签和属性和字段不一样的解决办法 和sql片段)(三)
  2. 向mysql中插入Date类型的数据
  3. 【POJ 1228】Grandpa&#39;s Estate 凸包
  4. C编程风格的人机交互 -- CSHELL (提供源码下载)
  5. 【HDOJ】4363 Draw and paint
  6. VM使用标准交换机
  7. Authentication
  8. DB天气app冲刺第六天
  9. 《REWORK》启示录 招聘笔杆子——程序员为什么值得写博客
  10. URAL 1820. Ural Steaks(数学啊 )
  11. C# Datatable.Select()用法简介
  12. zabbix 3.2 高可用实现方式二-pacemaker+corosync实现zabbix高可用集群
  13. 一个js小游戏----总结
  14. 关于Vue中的 render: h =&gt; h(App) 具体是什么含义?
  15. CreateUserWizard控件的使用
  16. SQL Server表分区-水平分区
  17. 客户端如何连接 DataSnap Server 调用服务的方法
  18. Spinner功能和用法
  19. (转)Windows下MySQL :GUI安装和使用(MySQL GUI tools)
  20. Android笔记-5-EditText密码和Checkbox二选一

热门文章

  1. 读懂UML类图
  2. Angular开发者手册重点翻译之指令(一)
  3. 查看Linux系统版本的命令
  4. 03-运行第一个docker容器
  5. axios封装(一)基础配置
  6. centos 7 install gnome etc
  7. 腾讯视频qlv格式转换MP4普通视频方法
  8. ASP.NET MVC - 启动创建项目,未能加载错误
  9. Programming Protocol-Independent Packet Processors
  10. 软件工程 - 第二十次作业 Alpha 事后诸葛亮(团队)