Vue 中 store 基本用法
阿新 • • 發佈:2022-05-08
面向物件:
面向物件程式設計思想,把事物分解成一個個物件,然後由物件分工與合作,每一個函式,
一定會有一個原型,屬性的選擇性放在例項化的物件中,函式寫在原型上。
面向物件,具有更好的靈活性,程式碼可服用,容易維護和開發。
具有封裝性(低耦合,高內聚),繼承性(子類繼承父類中的一些屬性和方法),多型性(過載)。
面向物件的思維特點:
抽取物件共用的屬性和方法封裝成一個類
對類進行例項化,獲取類的物件,每例項化一次就產生一個新的物件
constructor屬性
1.每個物件在建立時都會自動擁有一個建構函式屬性constructor
2.constructor是通過繼承關係繼承下來的,當前例項的物件父類就是__proto__,
裡面就有constructor屬性,它繼承了原型物件,constructor指向了當前的建構函式
3.constructor屬性表示原型物件和建構函式之間的關聯關係
class Name { constructor(uname) { // 方法體 this.uname = uname; } } var name = new Name('啊啊啊'); console.log(name.uname); // 輸出:啊啊啊
原型物件 (prototype)
- 構造方法的問題:浪費記憶體的問題,複雜資料型別 (例如函式) 他會另外開闢一個記憶體空間存相同的資料
2.為了解決這個問題,每個建構函式都會有一個自帶的物件 prototype,我們可以把那些不變的方法直接定
義在 prototype 上,所有的物件可以共享這些方法
function Star(uname, age) { // 變數 this.uname = uname; this.age = age; } // 原型物件裡的方法 Star.prototype.sing = function() { console.log('我會唱歌'); }
call 函式
call 可以呼叫函式,call 改變函式的 this 指向 (第一個引數代表函式的 this 指向,後面的引數代表傳遞引數)
用 call 函式來呼叫父建構函式,但是需要把父建構函式裡面的 this 都變為子建構函式的 this
function Father(uname, age) { // this 指向 Father this.uname = uname; this.age = age; } function Son(uname, age) { // 使 Son 繼承 Father 的屬性 Father.call(this, uname, age); }