国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網 會員登陸 & 注冊

JS原型和原型鏈

2020-05-18 15:23 作者:MagnumHou  | 我要投稿

一、原型和原型鏈

1.1 原型概述

原型prototype是每一個函數(shù)都默認自帶的屬性,它的值是一個對象,叫做原型對象。

對于構造函數(shù)來講,意義更大。因為通過構造函數(shù)可以實例化化對象,而每一個實例化的對象,都默認含有一個隱式的屬性 __proto__ 來指向該構造函數(shù)的原型對象。

原型的作用:為實例化對象提供共享的屬性和方法。

也就是說,在內存中開辟一塊共享的空間,供構造函數(shù)的實例化對象在調用時指向這一個共享的地址,節(jié)約內存。

1.2 原型鏈概述

每一個實例化對象,都有原型對象,原型對象本質還是一個對象,所以說原型對象上面可能還有原型對象。

當一個實例化對象,去調用某個屬性或方法時,它會先從自身查找,如果找到直接調用;如果找不到則去它的原型中查找,在原型中查找到則使用;如果它的原型中也沒有找到,那么繼續(xù)向上去原型的原型中查找,就這樣一層層的查找,形成一條鏈,這條鏈我們叫做原型鏈。一直找到,原型鏈的終點是 Object 的原型,如果還是找不到則返回undefined.

原型鏈關系圖
代碼演示

1.3 幾個相關屬性、方法、運算符介紹

prototype 屬性;允許您向對象添加屬性和方法

注:1. 這個屬性隨著函數(shù)的聲明而自動生成

????????2. 構造函數(shù)通過調用這個屬性自定義的共享屬性和方法可以被該構造函數(shù)的實例化對象調用

constructor 屬性;獲取實例化對象的構造函數(shù)

prototype 和 constructor屬性


instanceof 運算符;用于判斷實例化對象的原型鏈中是否出現(xiàn)過指定的構造函數(shù)

instanceof 運算符


isPrototypeOf() ?方法用于判斷原型對象和某個實例之間的關系

isPrototypeOf() ?方法


hasOwnProperty() ?方法判斷指定屬性是不是這個實例化對象的本地屬性

注:構造函數(shù)中定義的屬性和方法使本地屬性,隨著new的實例化對象的生成而生成,也就是對象本身具備的屬性和方法

返回值 ?是一個布爾值,本地屬性返回true ?非本地屬性返回false

hasOwnProperty() ?方法


in 運算符 ?判斷某個屬性可不可以被某個實例調用

in 運算符


in運算符還可以用于對對象屬性和數(shù)組的遍歷。

in運算符遍歷數(shù)組和對象
歡迎關注


JS原型和原型鏈的評論 (共 條)

分享到微博請遵守國家法律
新邵县| 陆良县| 铜山县| 金川县| 南安市| 兴隆县| 汉中市| 清河县| 中山市| 邵阳市| 内乡县| 曲麻莱县| 台南县| 阿克陶县| 云和县| 岐山县| 根河市| 高安市| 湖南省| 厦门市| 邵阳县| 太谷县| 宣武区| 宝山区| 精河县| 鄂伦春自治旗| 孙吴县| 科尔| 普宁市| 阿坝| 漳平市| 鹤庆县| 和静县| 阿坝| 潼南县| 德钦县| 宝鸡市| 文成县| 江孜县| 望奎县| 工布江达县|