QQ交流群:110826636

文档03_JavaScript_函数

函数示例
function关键字
普通函数创建
引用传值函数

function hello_01()
{
    var str01="lww";
    var str02="oop";
    var str03=new Array("one","two");
    document.write(str01+"||"+str02+"||"+str03);
    hello_02(str01,str02,str03);
    document.write("<br/>");//引用的函数传值
    document.write(str01+"||"+str02+"||"+str03);
}

function hello_02(str_01,str_02,str_arr)
{
    str_01="wwl";
    str_02="poo";
    str_arr[1]="three";
}

 
输出hello_01()函数
当然也可以使用return返回值
匿名函数
将函数看成是一个对象(事实上就是一个对象)
var func=new Function("","document.write(\"hello world!\");" );
语法格式:
var value=new Function("参数1","参数2",..."参数n","function");
匿名函数的申明也可以是字符串变量,即时执行失败或语句错误
注意:函数在设置参数的时候是不需要声明参数类型的
函数字面量

function func01(func,str)
{
    document.write(func(10,20)+str);
}
function func02()
{
    var func=function(x,y){return x*y};
    var funcc=new Function("x","y","return x*y" );//匿名函数
    func01(func,"第一个函数");
    document.write("<br/>");
    func01(funcc,"第二个函数");
}


执行输出func02()函数,函数变成了参数,但还是和匿名函数有区别的,函数字面量只会被解析一次(这个也不是太懂)
嵌套函数和闭包
简单

function func03(y)
{
    return function(x){ return x*y;}
}
function func04()
{
    var func_value01=func03(8);//返回函数对象,函数也是一个对象
    var func_value02=func_value01(7);//对该函数对象传值
    document.write(func_value02);
}

 
闭包:通常当函数结束时该作用范围就会释放,但当一个内部函数向外部函数返回一个值,并且赋予外部变量值的时候,内部函数就将附加到外部函数上,然后再附加到调用它们的应用程序中,保证内部函数和外部函数参数和属性的完整。(今天看到此概念,恍然大悟,原来它叫闭包)

 

练习代码文档下载

posted @ 2013-05-04 11:24  FourOne  阅读(226)  评论(0编辑  收藏