函数的三种定义方式
1.定义命名函数
2.定义匿名函数:匿名函数的可读性更好,做常用的方法
3.利用Function类匿名函数:可读性差
局部函数
在函数里使用var定义的变量称为局部变量,在函数外定义的变量和在函数内不使用var定义的变量则称为全局变量,如果局部变量和全局变量的变量名相同,则局部变量会覆盖全局变量。局部变量只能在函数里访问,全局变量可以在所有的函数里访问。
局部函数也在函数里定义。
JavaScript定义一个函数后,实际上可以得到如下4项。
➢函数:就像Java的方法一样,这个函数可以被调用。
➢对象:定义一个函数时,系统也会创建一个对象,该对象是Function 类的实例。
➢方法:定义一个函数时,该函数通常都会附加给某个对象、作为该对象的方法。
➢变量:在定义函数的同时,也会得到一个变量
➢**类:**在定义函数的同时,也得到了一个与函数同名的类。
调用函数的方式
➢直接调用函数:直接调用函数总是返回该函数体内最后一条return语句的返回值:如果该函数体内不包含return语句,则直接调用函数没有任何返回值。
➢使用new关键字调用函数:通过这种方式调用总有一个返回值,返回值就是一个JavaScript对象。
函数的实例属性和类属性
➢局部变量:在函数中以var声明的变量。
➢实例属性:在函数中以this 前缀修饰的变量。 ------------Java中的成员变量
➢类属性:在函数中以函数名前缀修饰的变量。 ------------类的静态变量
调用函数的三种方式
**1.直接调用函数:**是最常见、最普通的方式。这种方式直接以函数附加的对象作为调用者,在函数后括号内传入参数来调用函数。这种方式是前面最常见的调用方式,但不够灵活。
**2.以call()方法调用函数:**有时调用函数时需要动态地传入一个函数引用为了动态地调用函数,就需要使用call方法来调用函数
<script>
var each = function(array,fn){
for (var index in array) {
fn.call(null,index,array[