對象、原型

  • OOP 指什么含衔?有哪些特性 (難度: ***)

面向對象程序設計(英語:Object-oriented programming縮寫OOP)是種具有對象概念的程序編程范型二庵,同時也是一種程序開發(fā)的方法贪染。

  • 特性:
    封裝:獨立不需要具體了解其工作實現,熟悉接口即可催享。
    繼承:子類繼承父類的屬性和方法,功能擴展杭隙。

    多態(tài):在不同場景下有不同的處理方式。
  • 如何通過構造函數的方式創(chuàng)建一個擁有屬性和方法的對象? (難度: ***)
var Preson = function(name, age){
    this.name = name;
    this.age = age;
    this.sayName = function(){
        console.log('My name is ' + this.name);
    }
}
var people = new Preson('tom', 18);

1Preson就是構造函數因妙,用來生成對象實例(用this關鍵字代表要生成的實例)痰憎;
2使用new命令票髓,執(zhí)行(調用)構造函數Preson,生成實例對象铣耘;

1new命令創(chuàng)建一個空對象洽沟,作為將要返回的對象實例
2將這個空對象的原型__proto__,指向構造函數的prototype屬性
3將這個空對象賦值給函數內部的this關鍵字
4開始執(zhí)行構造函數內部的代碼
5構造函數內部蜗细,this指的是一個新生成的空對象裆操,所有針對this的操作,都會發(fā)生在這個空對象上
參考

  • prototype 是什么炉媒?有什么特性 (難度: ***)
  • JavaScript中的對象繼承的另一個對象稱為原型對象(prototype)踪区,null它沒有自己的原型對象。
function Car (name) {
        this.name = name;
}
Car.prototype.color = 'red';
var car1 = new Car('BMW');
var car2 = new Car('Audi');
car1.color // 'red'
car2.color // 'red'

通過構造函數創(chuàng)建的實例對象共用原型對象(prototype)上的屬性和方法吊骤,如果實例對象沒有某個屬性或方法時缎岗,它將會到構造函數的prototype內尋找。


color屬性在__proto__中白粉,也就是構造函數Car.prototype對象內
  • 畫出如下代碼的原型圖 (難度: ****)
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('前端');
  • 以下代碼中的變量age有什么區(qū)別(難度: ****)
function People (){
  var age = 1   //函數的局部變量
  this.age = 10;   //構造函數的實例變量传泊,通過new命令創(chuàng)建實例對象訪問
}
People.age = 20;  //函數的靜態(tài)變量,可以認為是函數的屬性
People.prototype.age = 30;  //函數原型對象添加的屬性,與通過new命令創(chuàng)建實例對象共有

代碼

  • 創(chuàng)建一個 Car 對象蜗元,擁有屬性name或渤、color系冗、status奕扣;擁有方法run,stop掌敬,getStatus
    (難度: 4*)
    var Car = {
        this.name = 'BMW';
        this.color = 'red';
        this.status = 0;
        run:function(){
            this.status = 1;
            //todo..
        }
        stop:function(){
            this.status = 0;
            //todu..
        }
        getStatus:function(){
            console.log(this.status);
            if (this.status) {
                return 'running';
            } else {
                return 'stopped';
            }
        }
    }
  • 創(chuàng)建一個 GoTop 對象惯豆,當 new 一個 GotTop 對象則會在頁面上創(chuàng)建一個回到頂部的元素,點擊頁面滾動到頂部奔害。擁有以下屬性和方法 (難度: 4*)
  • ct屬性楷兽,GoTop 對應的 DOM 元素的容器
  • target屬性, GoTop 對應的 DOM 元素
  • bindEvent方法华临, 用于綁定事件
  • createNode 方法芯杀, 用于在容器內創(chuàng)建節(jié)點
    代碼
  • 使用構造函數創(chuàng)建對象的方式完成輪播功能( 查看demo ),使用如下調用方式
function Carousel($node){
//todo...
}
Carousel.prototype = {
//todo ..
};
var $node1 = $('.ct').eq(0);
var $node2 = $('.ct').eq(1);
var carousel1 = new Carousel($node1);
var carousel2 = new Carousel($node2);

代碼

  • 使用構造函數創(chuàng)建對象的方式實現 Tab 切換功能
    代碼
    本博客版權歸 本人和饑人谷所有雅潭,轉載需說明來源
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末揭厚,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子扶供,更是在濱河造成了極大的恐慌筛圆,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件椿浓,死亡現場離奇詭異太援,居然都是意外死亡闽晦,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門提岔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仙蛉,“玉大人,你說我怎么就攤上這事唧垦⊥比澹” “怎么了?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵振亮,是天一觀的道長巧还。 經常有香客問我,道長坊秸,這世上最難降的妖魔是什么麸祷? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮褒搔,結果婚禮上阶牍,老公的妹妹穿的比我還像新娘。我一直安慰自己星瘾,他們只是感情好走孽,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著琳状,像睡著了一般磕瓷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上念逞,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天困食,我揣著相機與錄音,去河邊找鬼翎承。 笑死硕盹,一個胖子當著我的面吹牛,可吹牛的內容都是我干的叨咖。 我是一名探鬼主播瘩例,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼甸各!你這毒婦竟也來了垛贤?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤痴晦,失蹤者是張志新(化名)和其女友劉穎南吮,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體誊酌,經...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡部凑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年露乏,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片涂邀。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡瘟仿,死狀恐怖,靈堂內的尸體忽然破棺而出比勉,到底是詐尸還是另有隱情劳较,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布浩聋,位于F島的核電站观蜗,受9級特大地震影響,放射性物質發(fā)生泄漏衣洁。R本人自食惡果不足惜墓捻,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望坊夫。 院中可真熱鬧砖第,春花似錦、人聲如沸环凿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽智听。三九已至羽杰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瞭稼,已是汗流浹背忽洛。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工腻惠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留环肘,地道東北人。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓集灌,卻偏偏與公主長得像悔雹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子欣喧,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內容