js函数

来源:互联网 发布:ubuntu 卸载gdm 编辑:程序博客网 时间:2024/04/30 07:45
  1. 函数实际上是对象,函数名实际上也是一个指向函数对象的指针。
  2. 使用不带圆括号的函数名是访问函数指针,而非调用函数。
  3. 函数声明和函数表达式:
alert(test(2,3));function test(num1,num2){   //函数声明方式    return rum1+rum2;}

以上代码不会出错,以为在代码执行之前,解析器就已经通过一个名为函数声明提升的过程,读取并将函数声明添加到执行环境中。对代码求值时,JavaScript引擎在第一遍会声明函数并将它们放到源代码树的顶部,所以,即使声明函数的代码在调用它的代码后面,JavaScript引擎也能把函数声明提升到顶部。
但是,把上面的函数声明改为等价的函数表达式,就会在执行起价导致错误。

alert(test(2,3));var test=function(num1,num2){   //函数表达式方式    return rum1+rum2;}

产生错误是因为函数位于一个初始化语句中,而不是函数声明中。也就是执行到函数所在的语句之前,变量test中不会保存有对函数的引用。

4.因为函数本身就是变量,所以函数也可以当做值来使用。可以把函数当做参数传递给另一个函数。

0 0