美文网首页原生js
函数是对象,函数名是指针

函数是对象,函数名是指针

作者: 小妍妍说 | 来源:发表于2018-05-19 12:16 被阅读0次

    函数是这样一段JavaScript代码,它只定义一次,但可能被执行或调用任意次。在JavaScript里,函数即对象,程序可以随意操控它们,比如,JavaScript可以把函数赋值给变量,或者作为参数传递给其他函数。因为函数就是对象,所以可以给他们设置属性,甚至调用它们的方法。

    由于函数名仅仅是指向函数的指针,因此函数名与包含对象指针的其他变量没有什么不同,换句话说,一个函数可能会有多个名字,比如:

    ```

    function sum(num1,num2){

    return num1+num2;

    }

    alert(sum(10,10));                  //20

    var anotherSum = sum;

    alert(anotherSum(10,10));      //20

    sum = null;

    alert(anotherSum(10,10));      //20

    ```

    解释:以上代码首先定义了一个名为sum()的函数,用于求两个值得和。然后,又声明了变量anotherSum,并将其设置为与sum相等(将sun的值赋给anotherSum)。注意,使用不带圆括号的函数名是访问函数指针,而非调用函数。此时,anotherSum和sum都指向了同一个函数,因此anotherSum()也可以被调用并返回结果。即使将sum设置成null,让它与函数“断绝关系”,但仍然可以正常调用anotherSum()。

    相关文章

      网友评论

        本文标题:函数是对象,函数名是指针

        本文链接:https://www.haomeiwen.com/subject/oqbodftx.html