最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

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原型和原型鏈的評論 (共 條)

分享到微博請遵守國家法律
雅安市| 临汾市| 海阳市| 阿坝县| 汉沽区| 文化| 读书| 曲水县| 临沭县| 上杭县| 阿克陶县| 邯郸县| 阿图什市| 沈丘县| 嘉禾县| 沙坪坝区| 雷波县| 广南县| 股票| 乐昌市| 云安县| 锡林浩特市| 洞口县| 虎林市| 阳原县| 怀仁县| 上虞市| 郴州市| 康平县| 廊坊市| 南丰县| 和田市| 遂平县| 峨眉山市| 双鸭山市| 靖江市| 蒲江县| 武宁县| 扶绥县| 萝北县| 蓬溪县|