JS面向對象編程

讓前端開發者最熟悉又最陌生的就是js的面向對象編程了吧,不少人對面向對象編程一臉茫然,並自嘲只會面向過程編程,面向測試編程,面向業務編程。其實面向對象在平時開發中無處不在,由於JavaScript的全部數據均可以當作對象,可是咱們沒有這種面向對象開發的思想,雖然也許並不影響搬磚。前端

語言分類

計算機語言可大體分三類編程

①、面向機器:彙編語言。
②、面向過程:C語言
③、面向對象:Java、C++、PHP等。
複製代碼

區別函數

  1. 面向過程:專一於如何去解決一個問題的過程步驟,編程的特色是由一個個的函數去實現每一步的過程步驟,沒有類和對象的概念。
  2. 面向對象:專一於由哪個對象來解決這個問題,編程特色是出現了一個個的類,從類中拿到對象,由這個對象去解決具體問題

面向對象的三大特徵:繼承、封裝、多態測試

類和對象

1️⃣類:一類具備相同特徵(屬性)和行爲(方法)的集合;spa

人類: 屬性:身高、姓名、體重 方法:吃、喝、拉、撒code

2️⃣對象:從類中拿出具備肯定屬性值和方法的個體叫作對象: 好比對象

張三:身高:180cm 體重:70kg 方法:說話:我叫張三繼承

3️⃣關係ip

類是抽象的,對象是具體的;對象是類的實例開發

核心——對象

js一共有六種類型:string、boolean、number、null 和 undefined

注意,簡單基本類型(string、boolean、number、null 和 undefined)自己並非對象。null有時會被看成一種對象類型,可是這其實只是語言自己的一個 bug,即對 null 執行 typeof null 時會返回字符串 "object"。1 實際上,null 自己是基本類型。

原理是這樣的,不一樣的對象在底層都表示爲二進制,在 JavaScript 中二進制前三位都爲 0 的話會被判 斷爲 object類型,null的二進制表示是全 0,天然前三位也是 0,因此執行 typeof 時會返回「object」

內置對象

String、Number、Object、Function 、 Array、Date、RegExp、Error

這些內置對象從表現形式來講很像其餘語言中的類型(type)或者類(class),好比 Java 中的 String 類。 可是在 JavaScript 中,它們實際上只是一些內置函數。

相關文章
相關標籤/搜索