11-javaScript-面向對象

文章配套視頻

JavaScript中常見的對象

  1. 工廠模式
new Object()
  new后面調用函數(shù)它褪,我們稱為構造函數(shù)量承。
  Object() 我們把它視為一個構造函數(shù)洽损,構造函數(shù)的本質就是一個函數(shù),
  只不過構造函數(shù)的目的是為了創(chuàng)建新對象译株,為新對象進行初始化(設置對象的屬性)

使用工廠方法創(chuàng)建對象
  通過該方法可以大批量的創(chuàng)建對象
  使用工廠方法創(chuàng)建的對象,使用的構造函數(shù)都是Object
  所以創(chuàng)建的對象都是Object這個類型钩述,就導致我們無法區(qū)分出多種不同類型的對象
  1. 構造函數(shù)
定義
    構造函數(shù)就是一個普通的函數(shù)彩库,創(chuàng)建方式和普通函數(shù)沒有區(qū)別,  不同的是構造函數(shù)習慣上首字母大寫
    構造函數(shù)和普通函數(shù)的區(qū)別就是調用方式的不同,
    普通函數(shù)是直接調用槽惫,而構造函數(shù)需要使用new關鍵字來調用

執(zhí)行流程
    1. 立刻創(chuàng)建一個新的對象
    2. 將新建的對象設置為函數(shù)中this, 在構造函數(shù)中可以使用this來引用新建的對象
    3. 逐行執(zhí)行函數(shù)中的代碼
    4. 將新建的對象作為返回值返回
  1. this
定義
  解析器在調用函數(shù)每次都會向函數(shù)內部傳遞進一個隱含的參數(shù), 
  這個隱含的參數(shù)就是this周叮,this指向的是一個對象 , 這個對象我們稱為函數(shù)執(zhí)行的上下文對象
  根據函數(shù)的調用方式的不同界斜,this會指向不同的對象
    1.以函數(shù)的形式調用時仿耽,this永遠都是window
    2.以方法的形式調用時,this就是調用方法的那個對象
    3.當以構造函數(shù)的形式調用時各薇,this就是新創(chuàng)建的那個對象

誰調用this就是誰
    function test() {
     console.log(this);
     }
     test();  //window.test();
  //上面的this是window项贺,實際是window調用test()
     p1.sayHi(); 
  //sayHi()中的this,是p1峭判,此時是p1調用sayHi()
    構造函數(shù)中的this开缎,始終是new的當前對象
  1. 構造器(constructor) 和 原型屬性 (prototype)
在任何一個對象中都有構造器和原型屬性,包括原生的對象林螃,比如: Date, Array等
constructor 返回創(chuàng)建此對象的構造函數(shù)
prototype 讓我們有能力動態(tài)給對象添加屬性和方法
  1. 其他語言中面向對象
Java
    class Customer {
    //屬性
    public String Name;
    public String Age;
    public String Money;
    //方法
    public void Buy (String id,int num,double price) {
        self.money -= num * price;
        //記錄訂單
    }
}

    Customer  c1 = new  Customer();
    //屬性
    c1.Name = "張三";
    c1.Age = 18;
    c1.Money = 1000000;
    //方法
    c1.Buy("a001",1,500);
  1. 包裝類
定義
  在JS中為我們提供了三個包裝類奕删,通過這三個包裝類可以將基本數(shù)據類型的數(shù)據轉換為對象
String()
  可以將基本數(shù)據類型字符串轉換為String對象
Number()
  可以將基本數(shù)據類型的數(shù)字轉換為Number對象
Boolean()
  可以將基本數(shù)據類型的布爾值轉換為Boolean對象

注意:在實際應用中不會使用基本數(shù)據類型的對象

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市疗认,隨后出現(xiàn)的幾起案子完残,更是在濱河造成了極大的恐慌,老刑警劉巖横漏,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谨设,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人欠窒,你說我怎么就攤上這事÷朔瘢” “怎么了吃嘿?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長横朋。 經常有香客問我仑乌,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任晰甚,我火速辦了婚禮衙传,結果婚禮上,老公的妹妹穿的比我還像新娘厕九。我一直安慰自己蓖捶,他們只是感情好,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布扁远。 她就那樣靜靜地躺著俊鱼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪畅买。 梳的紋絲不亂的頭發(fā)上并闲,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音谷羞,去河邊找鬼帝火。 笑死,一個胖子當著我的面吹牛湃缎,可吹牛的內容都是我干的犀填。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嗓违,長吁一口氣:“原來是場噩夢啊……” “哼宏浩!你這毒婦竟也來了?” 一聲冷哼從身側響起靠瞎,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤比庄,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后乏盐,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體佳窑,經...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年父能,在試婚紗的時候發(fā)現(xiàn)自己被綠了神凑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡何吝,死狀恐怖溉委,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情爱榕,我是刑警寧澤瓣喊,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站黔酥,受9級特大地震影響藻三,放射性物質發(fā)生泄漏洪橘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一棵帽、第九天 我趴在偏房一處隱蔽的房頂上張望熄求。 院中可真熱鬧,春花似錦逗概、人聲如沸弟晚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽卿城。三九已至,卻和暖如春隶垮,著一層夾襖步出監(jiān)牢的瞬間藻雪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工狸吞, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留勉耀,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓蹋偏,卻偏偏與公主長得像便斥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子威始,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內容