JS中函数的定义方式

JS中函数是特殊的对象,可以拥有自己的属性和方法,属性被定义为局部变量,这样可以有效地防止变量的污染,方法被定义为闭包(定义在函数内部的函数)。JS中函数的实参和形参个数都可以不固定,通过arguments(实参对象)函数属性来调用,在函数内部arguments.length表示函数实参的个数,而arguments.callee.length表示函数的形参的个数。prototype称为原型属性,

1、通过函数直接量表达式定义(适合于只要使用一次的场景,在JS中使用最多的是回调函数):

function_name:function(x,y){return x+y;}//对象方式

2、通过函数定义表达式定义:

function function_name(x,y){//这里的function_name其实被称为函数定义变量名称

  return x+y;

}

通过这种方式定义的函数一次定义,多次使用

3、通过函数Function构造函数定义

var f = new Function("x","y","return x+y;");

 

通过这种方式定义的函数(1)每次被调用都会编译函数体,(2)实际上是重新创建了对象,(3)函数体中的参数不具有局部变量性(不是使用词法作用域)

posted @ 2016-10-22 16:25  燃烧小火苗  阅读(571)  评论(0编辑  收藏  举报