最近接手前端的作業,對當前專案中自制的js框架下,js的使用產生了非常多的困惑.尤其是js的類,物件,函式,this等等相互之間的關系和轉換,以前學過也忘得差不多了,現在基本相當于重新看.
js中的函式有可以有好幾種解釋,普通函式,類,一個物件.三個關系都是可以看成是共存的.
function user(){};//定義一個函式 console.log(user);//1.這個時候是普通函式 var u=new user(); console.log(u);//2.這個時候是當做user類 user.toString();//3.這個時候user是作為物件的

Function是個函式物件,也可以認為是個類,所有定義的函式都是Function類的物件,我定義的user也是物件,并且可以呼叫Function里面的方法
user.call(xxx);當我使用user呼叫call方法時,他是作為物件來使用,呼叫的是Function類里面的call方法,這個方法的作用是呼叫這個函式并且把傳遞進去的引數覆寫函式里面的this .第一個引數是覆寫函式里面的this , 剩下的引數是作為這個函式的引數傳進去
function user(name){
console.log('我被呼叫了,this被覆寫了',this,',引數傳進來了',name);
};
user.call({},'陶士涵');

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/131470.html
標籤:PHP
上一篇:php 偽協議
下一篇:php陣列指標函式
