function student(name)
{
this.name = name;
this.study = function(){alert(this.name+"bad");};
}
//student.prototype ={study:function(){alert(this.name+"bad");}}
//student.prototype.study =function(){ alert(this.name+"bad")};//can't inheritance
function boy(name)
{
student.call(this,name);
}
function girl(name)
{
student.apply(this,arguments);
}
//boy.prototype.love = function(){alert("love beauty");};
var b= new boy("jim");
girl.prototype = new student;
girl.prototype.love= function(){alert("love handsome");};
//new student("jim").study();
//boy.apply(new student("jim").study());
//b.love();
b.study();
var g =new girl("mery");
g.love();
function senior(name)
{
student.call(this,name);
}
senior.prototype = new student;//the critics
senior.prototype.love=function(){alert("older can't love");};
var sn =new senior("jack");
sn.study();
//----------------------
//scope 作用范围
function makeClosure(x)
{ return function(){ alert(x.val); }
}
var x = {val:5};
var alertX1 = makeClosure(x);
x.val = 10;
var alertX2 = makeClosure(x);
alertX1(); // 10
alertX2(); // 10
//
var globalClass = {val:4};
function classAndPoint(globalClass)
{
return function(){alert(globalClass.val);};
}
function classAndPoint2()
{
return function(){alert(globalClass.val);};
}
var transfer2= classAndPoint2();
transfer2();
globalClass.val =10;
var transfer= classAndPoint(globalClass);
transfer();
//-------------------------------------------------------------------------------
function Obj()
{
this.value="对象!";
}
var value="global 变量";
function Fun1(){
alert(this.value);
}
// window.Fun1();
Fun1.apply(window);
Fun1.call(window);
// Fun1.apply($('myText'));
Fun1.apply(new Obj());
//---------------------------------------------------------------------------

浙公网安备 33010602011771号