function对象

function创建方式:

 // function 创建方式1  (推荐方式)

    function func1() {
        alert(123);
        return 8
    }

    var ret=func1();
    alert(ret);

   //function 创建方式2 
    var func2=new Function("参数1","参数n","函数体");
    var add=new Function("a","b","alert(a+b)");

    alert(add.length);

function属性和方法 

函数属于引用类型,所以它们也有属性和方法。

 

function f() {
    return 8
}

alert(void(f()))


    function func1() {
        b=4;
        var b=3(尽量采用局部变量)
    }
    func1();
    alert(b);

   var ret=0
   function func1(a,b) {
          ret=a+b;
       return ret
             }

       alert(func1(1,5,6,9))


    function a(a,b){
       alert(a+b);
                   }
   var a=1;//变量a覆盖函数a

   var b=2;
   a(a,b)//报错

Function 对象的 length 属性:

比如,ECMAScript 定义的属性 length 声明了函数期望的参数个数。

alert(func1.length)

Function 对象的方法:

Function 对象也有与所有对象共享的 valueOf() 方法和 toString() 方法。这两个方法返回的都是函数的源代码,在调试时尤其有用。

alert(void(fun1(1,2)))

运算符void()作用:拦截方法的返回值

函数的内置对象arguments:

 1         var ret=0;
 2         function add() {
 3            console.log(arguments.length);
 4             console.log(arguments);
 5 
 6             for (var i in arguments){
 7                 ret+=arguments[i]
 8             }
 9             return ret;
10         }
11 
12         alert(add(1,2,3,4,5));
13 
14 
15     function func2() {
16         if (arguments.length!=3){
17             throw new Error("param should be 3")
18         }
19     }
20    func2(1,2,3,45);
21 
22 
23     var func3=function () {
24         alert(123)
25     };
26     func3();
View Code

 

匿名函数:

    var func3=function () {
        alert(123)
    };
    func3();

    //自执行函数
     (function(arg){
        console.log(arg);
    })('123')

 

 

posted on 2017-12-23 00:10  JieFangZhe  阅读(157)  评论(0编辑  收藏  举报

导航