對象_原型

1.OOP 指什么?有哪些特性

OOP全稱object-oriented programming , 譯作面向對象編程。
特性:

  • 開放封閉原則,開放指可以添加新的方法和屬性,封閉指不能修改已添加的方法和屬性。
  • 類的實例化就是對象
  • 封裝性,多個方法放在一個接口內,通過接口實現(xiàn)信息傳遞
  • 繼承,在某些情況下,子類比父類更具體化
  • 多態(tài),是指由繼承而產生的相關的不同的類

2.如何通過構造函數(shù)的方式創(chuàng)建一個擁有屬性和方法的對象?

function person(name,age) {
    this.name = 'jinlong';
    this.age = 26;
}

person.prototype.sayName = function () {
    console.log(this.name);
}

var p1 = new person();
p1.sayName();

3.prototype 是什么?有什么特性

prototype是顯性原型,每一個函數(shù)創(chuàng)建的時候都會自動一個prototype,它是一個空的對象。它能讓我們抽象避免重復,它主要有這些特性:

  • 所有實例都會通過原型鏈引用類型的prototype
  • prototype相當于所有特定類型都可以訪問的一個公共容器
  • 重復的東西可以放到公共容器中,避免重復。

4.畫出如下代碼的原型圖

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('前端');
原型.png

5.創(chuàng)建一個 Car 對象,擁有屬性name、color、status;擁有方法run,stop,getStatus

function car(name,color,status) {
    this.name = name;
    this.color = color;
    this.status = status;
}

car.prototype = {
    constructor: car,
    run: function () {
        console.log(this.name)
    },
    stop: function () {
        console.log(this.color)
    },
    getStatus: function () {
        console.log(this.status)
    }
}

var a = new car('jinlong','blue','true');

6. 創(chuàng)建一個 GoTop 對象,當 new 一個 GotTop 對象則會在頁面上創(chuàng)建一個回到頂部的元素,點擊頁面滾動到頂部。擁有以下屬性和方法

  1. ct屬性,GoTop 對應的 DOM 元素的容器
  2. target屬性, GoTop 對應的 DOM 元素
  3. bindEvent 方法, 用于綁定事件
  4. createNode 方法, 用于在容器內創(chuàng)建節(jié)點
    代碼鏈接

7.使用木桶布局實現(xiàn)一個圖片墻

代碼鏈接

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

相關閱讀更多精彩內容

友情鏈接更多精彩內容