7.1 什么是函数
函数是执行某项任务的一组语句,函数是一个独立的语句块,独立于程序,被调用时才被激活。
7.1.1 函数声明和调用
函数必须在调用前声明。
定义函数的形式:关键词function后跟函数名和一个圆括号,圆括号放置参数,也就是函数接收的值,函数语句包含在花括号中
function bay (){daument.write("bye adios adieu....");} 声明
bay () 调用
1、传递实参
如果用户想给函数传值,则在函数调用时将实参列表跟在函数名后的圆括号内,多个实参用逗号分隔,函数接收实参的值赋给对应的形参,实参名不需要和形参列表中的形参名相同,但是他们必须是对应相同的值
2、在链接中调用函数
javascript:协议和函数调用放在引号中,且被赋给标签<a>的href属性。
3、从事件调用函数
事件会在用户执行某个操作时触发,被赋值给事件的函数称为事件处理函数。
4、从javascript调用函数
函数定义在一段javascript代码中,在另一段中被调用,也可以在同一段javascript程序中定义和调用函数,但是一般习惯在文档头部定义函数,以确保函数在调用前被定义,也可以从链接、事件或者另一段javascript程序中调用函数,一般如果你的脚本是用来向页面写数据,将该函数定义在头部的javascript中,在body中编写javascrip代码调用函数。
5、函数中变量的作用域
变量的作用域是指程序中可以使用的位置,在函数之外声明的变量作用域是全局的,在函数内部声明的变量作用域是局部的,必须使用var关键字,一旦函数结束将不再可见。
7.1.2 返回值
函数使用return语句返回值,关键字return是可选的,且只能用于函数内,return时,函数退出,返回处理结果,如果没有return语句,则返回undifined值
7.1.3 匿名函数
匿名函数的定义一对花括号之内,函数的定义被赋给变量
7.1.4 闭包
闭包是定义在另一个函数中的匿名函数,当外部函数退出时,它返回内部匿名函数的引用,用过引用调用内部函数,闭包意味着局部变量对内部函数仍然可用,即使它已超出了作用域
7.1.5 递归
递归