Ext JS学习第三天 我们所熟悉的javascript(二)
•javascript之函数
•对于Ext开发者,我还是希望你能对javascript原生的东西非常了解、甚至熟练掌握运用。那么函数,无疑是非常重要的概念。首先在前面一讲,我们知道了函数也是一种数据类型,创建函数一共有三种方式。每种方式他们都会有区别,分别为:
–function语句形式
–函数直接量形式
–构造函数形式
•函数中的arguments对象
–argument的作用一:接受函数的实际参数
–argument的作用二:用于做递归操作
栗子代码
1 //Function 函数 2 //前两种创建函数的主要区别:function语句形式 ,javascript解释器 直接回去找 , 其他的代码就从上到下顺序执行 3 fun1(); 4 alert(fun2); 5 fun2(); 6 //1: function语句形式 7 function fun1(){ 8 alert('fun1...'); 9 }; 10 //2: 函数直接量的形式 11 var fun2 = function(){ 12 alert('fun2...'); 13 }; 14 15 //第三种构造函数形式 ,它具有的作用域与前两种不同,它具有顶级作用域 16 //3: 构造函数形式 17 var fun3 = new Function('x','y','return x+y;'); 18 alert(fun3(10, 20)); 19 20 21 22 var k = 1 ; 23 function test(){ 24 var k = 2 ; 25 //创建三种方式的函数: 26 //function f(){return k;}; 27 //var f = function(){return k;}; 28 var f = new Function('return k;'); 29 alert(f()); 30 }; 31 test(); 32 33 34 35 // arguments对象:每一个函数内部都有一个arguments对象 36 function test(x,y){ 37 // 第一个作用:接受函数的实际参数 38 alert(arguments.length); // len = 3 39 alert(arguments[2]); // val = 3 40 }; 41 test(1,2,3); 42 43 // 第二个作用: 通常用于递归操作 44 // arguments.callee 表示引用当前函数本身 45 function fact(number){ 46 if(number <= 1){ 47 return 1 ; 48 } else { 49 return number*arguments.callee(number-1); 50 } 51 }; 52 //alert(fact(5)); 53 var fact2 = fact ; 54 fact = null ; 55 alert(fact2(5));
推荐给各位推荐个优美文章网www.fishcmonkey.com,学习之余提高文学修养
每天进步一点点 个人网址
posted on 2014-08-20 21:44 code&monkey 阅读(339) 评论(0) 编辑 收藏 举报