真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JavaScript知識總結(jié) 原型篇

這里給大家分享我在網(wǎng)上總結(jié)出來的一些知識,希望對大家有所幫助

創(chuàng)新互聯(lián)專注于彭水苗族土家族企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城開發(fā)。彭水苗族土家族網(wǎng)站建設(shè)公司,為彭水苗族土家族等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站設(shè)計,專業(yè)設(shè)計,全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

1. 對原型、原型鏈的理解

在JavaScript中是使用構(gòu)造函數(shù)來新建一個對象的,每一個構(gòu)造函數(shù)的內(nèi)部都有一個 prototype 屬性,它的屬性值是一個對象,這個對象包含了可以由該構(gòu)造函數(shù)的所有實(shí)例共享的屬性和方法。當(dāng)使用構(gòu)造函數(shù)新建一個對象后,在這個對象的內(nèi)部將包含一個指針,這個指針指向構(gòu)造函數(shù)的 prototype 屬性對應(yīng)的值,在 ES5 中這個指針被稱為對象的原型。一般來說不應(yīng)該能夠獲取到這個值的,但是現(xiàn)在瀏覽器中都實(shí)現(xiàn)了 __proto__ 屬性來訪問這個屬性,但是最好不要使用這個屬性,因?yàn)樗皇且?guī)范中規(guī)定的。ES5 中新增了一個 Object.getPrototypeOf() 方法,可以通過這個方法來獲取對象的原型。

當(dāng)訪問一個對象的屬性時,如果這個對象內(nèi)部不存在這個屬性,那么它就會去它的原型對象里找這個屬性,這個原型對象又會有自己的原型,于是就這樣一直找下去,也就是原型鏈的概念。原型鏈的盡頭一般來說都是 Object.prototype 所以這就是新建的對象為什么能夠使用 toString() 等方法的原因。

特點(diǎn):JavaScript 對象是通過引用來傳遞的,創(chuàng)建的每個新對象實(shí)體中并沒有一份屬于自己的原型副本。當(dāng)修改原型時,與之相關(guān)的對象也會繼承這一改變。

2. 原型修改、重寫

function Person(name) {
    this.name = name
}
// 修改原型
Person.prototype.getName = function() {}
var p = new Person('hello')
console.log(p.__proto__ === Person.prototype) // true
console.log(p.__proto__ === p.constructor.prototype) // true
// 重寫原型
Person.prototype = {
    getName: function() {}
}
var p = new Person('hello')
console.log(p.__proto__ === Person.prototype)        // true
console.log(p.__proto__ === p.constructor.prototype) // false

文章題目:JavaScript知識總結(jié) 原型篇
當(dāng)前URL:http://weahome.cn/article/dsojpgp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部