原文:深入理解javascript原型和閉包(5)——instanceof

又介紹一個老朋友 instanceof。 對於值類型,你可以通過typeof判斷,string number boolean都很清楚,但是typeof在判斷到引用類型的時候,返回值只有object function,你不知道它到底是一個object對象,還是數組,還是new Number等等。 這個時候就需要用到instanceof。例如: 上圖中,f 這個對象是被Foo創建,但是 f insta ...

2014-09-18 16:38 48 62032 推薦指數:

查看詳情

深入理解javascript原型閉包(10)——this

接着上一節講的話,應該輪到“執行上下文棧”了,但是這里不得不插入一節,把this說一下。因為this很重要,js的面試題如果不出幾個與this有關的,那出題者都不合格。 其實,this的取值, ...

Tue Sep 23 22:57:00 CST 2014 46 57932
深入理解javascript原型閉包(6)——繼承

為何用“繼承”為標題,而不用“原型鏈”? 原型鏈如果解釋清楚了很容易理解,不會與常用的java/C#產生混淆。而“繼承”確實常用面向對象語言中最基本的概念,但是java中的繼承與javascript中的繼承又完全是兩回事兒。因此,這里把“繼承”着重拿出來,就為了體現 ...

Fri Sep 19 04:17:00 CST 2014 26 58959
深入理解javascript原型閉包系列

  從下面目錄中可以看到,本系列有16篇文章,外加兩篇后補的,一共18篇文章。寫了半個月,從9月17號開始寫的。每篇文章更新時,讀者的反饋還是可以的,雖然不至於上頭條,但是也算是中規中矩,有看的人,也有評論的人。特別是在后期講閉包的時候。   我從來都不做基礎入門教程,因為基礎入門的教程,要想 ...

Tue Sep 30 16:05:00 CST 2014 73 100450
深入理解javascript原型閉包(完結)

說明:   該教程繞開了javascript的一些基本的語法知識,直接講解javascript中最難理解的兩個部分,也是和其他主流面向對象語言區別最大的兩個部分——原型閉包,當然,肯定少不了原型鏈和作用域鏈。幫你揭開javascript最神秘的面紗。   為什么要偏偏要講這兩個知識點 ...

Thu Sep 18 04:35:00 CST 2014 61 208589
深入理解javascript原型閉包(15)——閉包

前面提到的上下文環境和作用域的知識,除了了解這些知識之外,還是理解閉包的基礎。 至於“閉包”這個詞的概念的文字描述,確實不好解釋,我看過很多遍,但是現在還是記不住。 但是你只需要知道應用的兩種情況即可——函數作為返回值,函數作為參數傳遞。 第一,函數作為返回值 如上代碼,bar函數 ...

Fri Sep 26 15:55:00 CST 2014 97 134593
深入理解javascript原型閉包(3)——prototype原型

既typeof之后的另一位老朋友! prototype也是我們的老朋友,即使不了解的人,也應該都聽過它的大名。如果它還是您的新朋友,我估計您也是javascript的新朋友。 在咱們的第一節(深入理解javascript原型閉包(1)——一切都是對象)中說道,函數也是一種對象。他也是 ...

Thu Sep 18 05:51:00 CST 2014 52 94661
深入理解javascript原型閉包(7)——原型的靈活性

在Java和C#中,你可以簡單的理解class是一個模子,對象就是被這個模子壓出來的一批一批月餅(中秋節剛過完)。壓個啥樣,就得是個啥樣,不能隨便動,動一動就壞了。 而在javascript中,就沒有模子了,月餅被換成了面團,你可以捏成自己想要的樣子。 首先,對象屬性可以隨時改動 ...

Fri Sep 19 05:05:00 CST 2014 8 47398
深入理解javascript原型閉包(4)——隱式原型

注意:本文不是javascript基礎教程,如果你沒有接觸過原型的基本知識,應該先去了解一下,推薦看《javascript高級程序設計(第三版)》第6章:面向對象的程序設計。 上節已經提到,每個函數function都有一個prototype,即原型。這里再加一句話——每個對象都有一個 ...

Thu Sep 18 23:14:00 CST 2014 99 76155
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM