1. To confirm the deletion
 function confirmit()
      {          
          if(confirm("你确认删除此文件吗?"))
          {
              document.form1.submit();
          }     
      }    

<form name="form1" action=1.html>
      <input type="button" value="ok"/>
</form>

2. Factorials
var factorial=function(x) {   
    if (x <= 1) return 1;   
    return x * arguments.callee(x-1);   
}  
alert(factorial(4));


3. Object-oriented - inheritance (with prototype)
 function Circle(radius) {  //定义父类Circle  
     this.radius = radius;  
 }  
 Circle.prototype.area = function() { //定义父类的方法area计算面积  
     return this.radius * this.radius * 3.14;  
 }  
   
 function PositionCircle(x,y,radius) { //定义类PositionCircle  
     this.x = x;                    //属性横坐标  
     this.y = y;                    //属性纵坐标  
     Circle.call(this,radius);      //调用父类的方法,相当于调用this.Circle(radius),设置PositionCircle类的  
                                    //radius属性  
 }  
 PositionCircle.prototype = new Circle(); //设置PositionCircle的父类为Circle类  
   
 var pc = new PositionCircle(1,2,1);  
 alert(pc.area());  //3.14  
                    //PositionCircle类的area方法继承自Circle类,而Circle类的  
                    //area方法又继承自它的prototype属性对应的prototype对象  
 alert(pc.radius); //1  PositionCircle类的radius属性继承自Circle类  
   
 /* 
 注意:在前面我们设置PositionCircle类的prototype属性指向了一个Circle对象, 
 因此pc的prototype属性继承了Circle对象的prototype属性,而Circle对象的constructor属 
 性(即Circle对象对应的prototype对象的constructor属性)是指向Circle的,所以此处弹出 
 的是Circ. 
 */  
 alert(pc.constructor); //Circle      
   
 /*为此,我们在设计好了类的继承关系后,还要设置子类的constructor属性,否则它会指向父类 
 的constructor属性 
 */  
 PositionCircle.prototype.constructor = PositionCircle  
 alert(pc.constructor);  //PositionCircle 


4.js object-oriented - many states
See the same name download