高級(jí)1:對(duì)象_原型

問(wèn)題1: OOP 指什么?有哪些特性

oop指的是面向?qū)ο缶幊?,是用抽象的方式?chuàng)建基于現(xiàn)實(shí)世界模型的一種編程模式。它使用先前建立的范例,包括繼承、多態(tài)和封裝三大特性。今天流行的編程語(yǔ)言都支持面向?qū)ο缶幊?/p>

問(wèn)題2: 如何通過(guò)構(gòu)造函數(shù)的方式創(chuàng)建一個(gè)擁有屬性和方法的對(duì)象?

function Person(name,age){
    this.name=name;
    this.age=age;
    this,sayName=function(){
      alert(this.name+''+this.age);
}
}
var person=new Person('jack',18)

問(wèn)題3: prototype 是什么?有什么特性

prototype指的是原型。每創(chuàng)建一個(gè)函數(shù),都會(huì)有一個(gè)prototype屬性,這個(gè)屬性是一個(gè)指針,用來(lái)指向函數(shù)的原型對(duì)象。prototype就是通過(guò)調(diào)用構(gòu)造函數(shù)而創(chuàng)建的那個(gè)對(duì)象實(shí)例的原型對(duì)象
特性:

  1. 原型對(duì)象上的所有屬性和方法,都能被派生對(duì)象共享
  2. 通過(guò)構(gòu)造函數(shù)生成實(shí)例對(duì)象時(shí),會(huì)自動(dòng)為實(shí)例對(duì)象分配原型對(duì)象。每一個(gè)構(gòu)造函數(shù)都有一個(gè)prototype屬性,這個(gè)屬性就是實(shí)例對(duì)象的原型對(duì)象。
  3. 原型對(duì)象的屬性不是實(shí)例對(duì)象自身的屬性。只要修改原型對(duì)象,變動(dòng)就立刻會(huì)體現(xiàn)在所有實(shí)例對(duì)象上。
  4. 如果實(shí)例對(duì)象自身就有某個(gè)屬性或方法,它就不會(huì)再去原型對(duì)象尋找這個(gè)屬性或方法。

問(wèn)題4:畫(huà)出如下代碼的原型圖

function People (name){
  this.name = name;
  this.sayName = function(){
    console.log('my name is:' + this.name);
  }
}

People.prototype.walk = function(){
  console.log(this.name + ' is walking');  
}

var p1 = new People('饑人谷');
var p2 = new People('前端');
image.png

問(wèn)題5: 創(chuàng)建一個(gè) Car 對(duì)象,擁有屬性name、color、status;擁有方法run,stop,getStatus

function Car(name,color,status){
        this.name = name
        this.color = color
        this.status =status
    }
    Car.prototype = {
        run: function(){
            console.log(this.name+'is running')
        },
        stop: function(){
            console.log(this.name+'stopped')
        },
        getStatus:function(){
            console.log(this.name+'is'+this.status)
        }
    }
    var car = new Car('奔馳','red','nice')

問(wèn)題6: 創(chuàng)建一個(gè) GoTop 對(duì)象,當(dāng) new 一個(gè) GotTop 對(duì)象則會(huì)在頁(yè)面上創(chuàng)建一個(gè)回到頂部的元素,點(diǎn)擊頁(yè)面滾動(dòng)到頂部。擁有以下屬性和方法

http://js.jirengu.com/gomevadoru/1/edit?html,output

問(wèn)題7: 使用木桶布局實(shí)現(xiàn)一個(gè)圖片墻

預(yù)覽地址:https://a625689014.github.io/barrel/barrel.html
代碼地址:https://github.com/a625689014/barrel

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容