@
目錄- 面向程序編程P OP(Process oriented programming)
- 面向物件編程OOP(Object Oriented Programming)
- ES6中的類和物件
- 面向物件
- 1、物件
- 2、類class
- 3、創建類
- 4、 創建物件
- 5、類添加方法
- 總結
面向程序編程P OP(Process oriented programming)
面向程序就是分析出解決問題的步驟,然后用函式把這些步驟一步一步實作,使用的時候再一個一個的依次呼叫就可以了,
- 優點:性能比面向物件高,適合跟硬體聯系很緊密的東西,例如單片機就采用的面向程序編程
- 缺點:沒有面向物件易維護、易復用、易擴展,
面向物件編程OOP(Object Oriented Programming)
面向物件是把事務分解成為一個個物件,然后由物件之間分工與合作,
面向物件編程具有靈活性、代碼可復用、容易維護和開發的優點,更適合多人合作的大型軟體專案
- 優點:易維護、易復用、易擴展,由于面向物件有封裝、繼承、多型性的特性,可以設計出低耦合的系統,使系統更加靈活、更加易于維護
- 缺點: 性能比面向程序低
ES6中的類和物件
面向物件
面向物件的思維特點:
- 抽取(物件)物件共用的屬性和行為組織(封裝)成一個類(模板)
- 對類進行實體化,獲取類的物件
1、物件
現實生活中:萬物皆物件,物件是一個具體的事物,看得見摸得著的實物,
在javascript中,物件是一組無序的相關屬性和方法的集合,所有的事物都是物件,例如:字串、陣列、數值、函式等,
物件是由屬性和方法組成的:
- 屬性: 事物的特征,在物件中用屬性來表示
- 方法: 事物的行為,在物件中用方法來表示
2、類class
在ES6中新增加了類的概念,可以使用class關鍵字宣告一個類,之后以這個類來實體化物件,
類抽象了物件的公共部分,它泛指某一大類(class)
物件特指某一個,通過類實體化一個具體的物件,
3、創建類
語法:
class name {
//class body
}
創建實體:
var xx = new name() //類必須使用new實體化物件
4、 創建物件
constructor()的方法是類的建構式(默認方法),用于傳遞引數,回傳實體物件,通過new命令生成物件實體時,自動呼叫該方法,如果沒有顯示定義,類內部會自動給我們創建一個constructor()
//創建類class
class Star {
constructor(uname) {
this.uname = uname
}
}
// 利用類創建物件 new
let b = new Star('藍風')
console.log(b) //藍風
創建類和物件的幾點注意事項:
- 通過class關鍵字創建類,類名我們還是習慣性定義首寫字母大寫
- 類里面有個constructor函式,可以接受傳遞過來的引數,同時回傳實體物件
- constructor 函式只要new生成實體時,就會自動呼叫這個函式,如果我們不寫這個函式,類也會自動生成這個函式
- 生成實體 new 不能省略
- 最后注意語法規范,創建類 類名后面不要加小括號,生成實體 類名后面要加小括號,建構式不需要加function
5、類添加方法
class Person {
constructor(name, age) {
this.name = name
this.age = age
}
say () {
console.log(this.name + '你好')
}
}
let person1 = new Person('藍風', 28)
person1.say() // 藍風你好
添加類方法注意事項:
- 我們類里面的所有函式不需要寫function
- 多個函式方法之間不需要添加逗號分隔
總結
這篇文章主要介紹了面向程序編程和面向物件編程各自的優缺點,ES6類和物件,創建類和物件等,這是自己的學習筆記,僅代表自己的觀點,還請各位指教,如果想了解更多,請掃描下面二維碼:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/147287.html
標籤:JavaScript
