js中的物件和函式的徹底理解

2021-08-25 02:26:44 字數 658 閱讀 9403

在js中物件就是神一般的存在,什麼都是物件(包括函式),你就這麼理解好了。

函式是用來實現具體功能的**,用一種方式把他們組織起來,就是函式了。

物件是有屬性和方法的乙個東西,在物件中的函式就變成了方法。

剛學習js不用太糾結這些概念性的東西吧。慢慢用多了就自然而然熟悉了。

所有的函式(除了一些內建函式)都有乙個名為prototype(原型)的屬性,這個屬性是乙個指標,指向乙個原型物件,而這個物件的用途是包含可以有特定型別的所有例項共享的屬性和方法。(並且有乙個constructors(構造器)屬性,指回原來的建構函式)

物件具有屬性__proto__,可稱為隱式原型,乙個物件的隱式原型指向構造該物件的建構函式的原型(prototype),這也保證了例項能夠訪問在建構函式原型中定義的屬性和方法。

所以 物件的.__proto__ == 建構函式.pertotype; 他倆都指向同乙個原型物件

徹底理解js中this的指向

首先必須要說的是,this的指向在函式定義的時候是確定不了的,只有函式執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個呼叫它的物件 這句話有些問題,後面會解釋為什麼會有問題,雖然網上大部分的文章都是這樣說的,雖然在很多情況下那樣去理解不會出什麼問題,但是實際上那樣理解是不準確的...

徹底理解 JS 中 this 的指向

首先必須要說的是,this的指向在函式定義的時候是確定不了的,只有函式執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個呼叫它的物件 這句話有些問題,後面會解釋為什麼會有問題,雖然網上大部分的文章都是這樣說的,雖然在很多情況下那樣去理解不會出什麼問題,但是實際上那樣理解是不準確的...

徹底理解js中的閉包

閉包是js的乙個難點也是它的乙個特色,是我們必須掌握的js高階特性,那麼什麼是閉包呢?它又有什麼用呢?我們都知道,js的作用域分兩種,全域性和區域性,基於我們所熟悉的作用域鏈相關知識,我們知道在js作用域環境中訪問變數的權利是由內向外的,內部作用域可以獲得當前作用域下的變數並且可以獲得當前包含當前作...