JavaScript 笔记2

javascript

JavaScript 特殊关键字

arguments

argements.callee

用于匿名函数递归调用本身

function makeFactorialFunc()
       {
           //alert("making a factorial function");
           return function(x)
           {
               if(x<=1) return 1;
                return x*arguments.callee(x-1);
           }
       }
alert(makeFactorialFunc()(5));//120
 
 

function

function.caller属性

用于返回调用函数的函数。

function.apply方法

Syntax: var result = fun.apply(thisArg[,argsArray);

应用某一对象的一个方法,用另一个对象替代当前对象。

prototype

var Class = {

   create:function(){

      return function(){

         this.initialize.apply(this,arguments);

      }

   }

}

 

该对象仅包含一个方法:create,其中一个函数,即类。

var vehicle = Class.create();

vehicle.prototype = {

   initialize:function(type){

     this.type = type;

   }

   showSelf:function(){

       alert(“this vehicle is ” + this.type);

   }

}

var moto = new vehicle(“Moto”);

moto.showSelf();

function.call方法

syntax: var result = fun.call(thisArg[,arg1[,arg2[,…]]]);

posted @ 2009-10-29 14:54  LeoLWang  阅读(145)  评论(0编辑  收藏  举报