码迷,mamicode.com
首页 > Web开发 > 详细

js 函数Function

时间:2014-12-25 16:28:17      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:js基础

1.函数实际上是一个对象typeof functionName→function,通过instanceof判断属于哪个类。

2.函数名实际是一个指针,指向某个函数体。

3.函数内部有两个对象:arguments和this。arguments不光可以指向函数传进去的参数,并且,arguments.callee指向函数,比如函数outer,调用的时候可以写为outer(),此时就可以更改为arguments.callee();

this指的是一个执行环境,比如我们单独调用函数outer,那么此时this就是window,如果我们采用call,或者apply就可以控制函数的调用对象,即this对象,

function outer(){} 

var obj = new Object();

outer.call(obj);这时this就指向的是obj。

我们可以看到两个方法apply和call,都是方法的调用,方法可以通过方法名称调用,为什么还需要call和apply。因为他们可以控制this对象。其中如果outer.call(null)或者

outer.call(undefined),那么此时则指向的是window对象。call和apply的区别在于第二个参数,apply的第二个参数只能是arguments和一个数组,而call则是一一列举的,比如

outer.call(obj,"red","blue");而apply则是outer.apply(obj,["red","blue"]);

js 函数Function

标签:js基础

原文地址:http://blog.csdn.net/zerofine/article/details/42146865

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!