Ext JS学习第三天 我们所熟悉的javascript(二)

时间:2021-12-28 16:17:12
•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,学习之余提高文学修养