欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

現(xiàn)代 javscript 編程 資料第2/6頁

 更新時(shí)間:2007年04月09日 00:00:00   作者:  

面向?qū)ο蟮腏avaScript

  從語言的視角來看,面向?qū)ο蟮某绦蛟O(shè)計(jì)和面向?qū)ο蟮腏avaScript語言絕對(duì)不是什么摩登的東西;JavaScript最開始就是被設(shè)計(jì)成一種徹底的面向?qū)ο笳Z言。然而,隨著JavaScript在其使用和接受的過程中的“逐步發(fā)展”,其它語言(如Ruby,Python,和Perl等)的程序員留意到了它并開始將他們的編程模式引入了JavaScript。

  面向?qū)ο蟮腏avaScript代碼的外觀和內(nèi)部運(yùn)作都有別于其它具有對(duì)象能力的語言。在第二章我將深入論述使它如此獨(dú)特的方方面面,而在這里,先來看一點(diǎn)基礎(chǔ)的東西以體會(huì)編寫現(xiàn)代JavaScript代碼的初步感覺。程序1-1中的兩個(gè)對(duì)象構(gòu)造器的例子,演示了可用于學(xué)校課程的簡(jiǎn)單的對(duì)象搭配。

程序1-1. 課程和課程表的面向?qū)ο驤avaScript表述


//類Lecture的構(gòu)造器
//使用兩個(gè)字符串參數(shù),name和teacher
function Lecture( name, teacher ) {
    //把它們作為對(duì)象的本地屬性保存
    this.name = name;
    this.teacher = teacher;
}

//類Lecture的方法,生成一個(gè)顯示該課程信息的字符串
Lecture.prototype.display = function(){
    return this.teacher + " is teaching " + this.name;
};

//類Schedule的構(gòu)造器
//使用一個(gè)lectures類型的數(shù)組作為參數(shù)
function Schedule( lectures ) {
    this.lectures = lectures;
}

//類Schedule的方法,用來構(gòu)造一個(gè)描述該課程表的字符串
Schedule.prototype.display = function(){
    var str = "";
    //遍歷每門課程,累加構(gòu)成信息字符串
    for ( var i = 0; i < this.lectures.length; i++ )
        str += this.lectures[i].display() + " ";
    return str;
};


  從程序1-1的代碼中你或許已經(jīng)看出,大部分的面向?qū)ο蠡驹瓌t貫穿存在于其中,但它們是以不同于其它更常見的面向?qū)ο笳Z言的方式組織起來的。你可以創(chuàng)建對(duì)象構(gòu)造器和方法,并存取對(duì)象屬性。程序1-2展示了在應(yīng)用程序中使用上面兩個(gè)類的一個(gè)示例。

程序1-2. 給用戶提供課程的列表


//創(chuàng)建一個(gè)新的課表對(duì)象,存于變量mySchedule中
var mySchedule = new Schedule([
    //創(chuàng)建一個(gè)課程對(duì)象的數(shù)組,
    //作為傳給課表(原文此處為L(zhǎng)ecture,疑為筆誤)對(duì)象的唯一參數(shù)
    new Lecture( "Gym", "Mr. Smith" ),
    new Lecture( "Math", "Mrs. Jones" ),
    new Lecture( "English", "TBD" )
]);

// 彈出對(duì)話框顯示課表的信息
alert( mySchedule.display() );


  伴隨對(duì)廣大程序員對(duì)JavaScript的接受,設(shè)計(jì)良好的面向?qū)ο蟠a的使用也正日益普及。貫穿本書的始末,我將試圖展示我認(rèn)為能夠最好地例示代碼設(shè)計(jì)與實(shí)現(xiàn)的不同的面向?qū)ο蟮腏avaScript代碼片段。

相關(guān)文章

  • 使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫性能好

    使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫性能好

    requestAnimationFrame優(yōu)于setTimeout/setInterval的地方在于它是由瀏覽器專門為動(dòng)畫提供的API,在運(yùn)行時(shí)瀏覽器會(huì)自動(dòng)優(yōu)化方法的調(diào)用,并且如果頁面不是激活狀態(tài)下的話,動(dòng)畫會(huì)自動(dòng)暫停,有效節(jié)省了CPU開銷,這篇文章給大家詳細(xì)介紹使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫
    2015-08-08
  • 微信小程序中插入激勵(lì)視頻廣告并獲取收益(實(shí)例代碼)

    微信小程序中插入激勵(lì)視頻廣告并獲取收益(實(shí)例代碼)

    這篇文章主要介紹了微信小程序中插入激勵(lì)視頻廣告并獲取收益,通過代碼給大家介紹了如何插入及注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • javascript實(shí)現(xiàn)的textarea運(yùn)行框效果代碼 不用指定id批量指定

    javascript實(shí)現(xiàn)的textarea運(yùn)行框效果代碼 不用指定id批量指定

    今天在寫一個(gè)網(wǎng)頁的時(shí)候用到了N多嵌套在textarea標(biāo)簽里的代碼,定義雙擊運(yùn)行其內(nèi)的代碼段。但是每次創(chuàng)建一個(gè)這樣的可運(yùn)行的實(shí)例都要給textarea元素自定義一個(gè)id值和寫入雙擊事件,好不麻煩。
    2009-12-12
  • JavaScript 繼承詳解(五)

    JavaScript 繼承詳解(五)

    在本章中,我們將分析John Resig關(guān)于JavaScript繼承的一個(gè)實(shí)現(xiàn) - Simple JavaScript Inheritance,需要的朋友可以參考下
    2016-10-10
  • js中的document.querySelector()方法舉例詳解

    js中的document.querySelector()方法舉例詳解

    這篇文章主要給大家介紹了關(guān)于js中document.querySelector()方法的相關(guān)資料,document.querySelector是JavaScript中的一個(gè)內(nèi)置方法,用于通過CSS選擇器選擇文檔中的第一個(gè)匹配元素,需要的朋友可以參考下
    2024-01-01
  • webpack多入口文件頁面打包配置詳解

    webpack多入口文件頁面打包配置詳解

    本篇文章主要介紹了webpack多入口文件頁面打包配置詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • js option刪除代碼集合

    js option刪除代碼集合

    javascript刪除option選項(xiàng)的多種方法,方便大家選用。
    2008-11-11
  • Echarts.js實(shí)現(xiàn)水滴球和海洋效果

    Echarts.js實(shí)現(xiàn)水滴球和海洋效果

    這篇文章介紹了Echarts.js實(shí)現(xiàn)水滴球和海洋效果的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法

    js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法

    今天小編就為大家分享一篇js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 25個(gè)讓你眼前一亮的JavaScript代碼技巧分享

    25個(gè)讓你眼前一亮的JavaScript代碼技巧分享

    學(xué)習(xí)強(qiáng)大的JavaScript一行代碼,能夠節(jié)省你的時(shí)間和代碼量,所以本文為大家整理了25個(gè)JavaScript實(shí)用代碼技巧,感興趣的小伙伴可以了解一下
    2023-07-07

最新評(píng)論