《JavaScript語言精粹》讀書筆記

來源:互聯網
上載者:User

<javaScript語言精粹>這本書寫的很好,可以說句句是精華。這麼薄的一本書講JavaScript的特點介紹的非常清楚,是我對JavaScript的認識更加的深入。以前總覺得函數式編程很難理解,但是看了這本書以後我覺得對其有了一個新的認識。嚴格意義上說JavaScript並不僅僅是一門函數式程式設計語言,書中有一句話對它的特性做了一個精彩的描述:JavaScript的許多特性都借鑒自其他語言。文法借鑒自java,函數借鑒自Scheme,原型繼承借鑒自Self,而JavaScript的Regex特性則借鑒自Perl。

JavaScript的簡單類型有:數字、字串、布爾值、null值和undefined值。在JavaScript中,數組是對象,函數是對象,Regex是對象。可以使用對象字面量來建立一個新對象: var empty_object = { };

每個對象都串連到一個原型對象,並繼承其屬性。使用typeof可以確定屬性的類型。使用delete可以刪除對象的屬性。

函數也是對象,其原型對象為Function.prototype.函數有一個call屬性,當JavaScript調用函數時,可理解為調用該函數的call屬性。函數有四種調用模式:方法調用模式,函數調用模式,構造器調用模式和apply調用模式。這些模式主要是初始化關鍵字this存在差異,分別是:調用對象,全域對象,隱藏串連到該函數的prototype成員的新對象,apply方法的第一個參數。當函數被調用時,會得到一個arguments數組,可以通過它訪問傳遞給該函數的所有參數。一個函數總是會返回一個值,如果沒有制定傳回值,則返回underfined.

JavaScript中的數組其實是一種偽數組。她把數組的下標轉變成字串,用其作為屬性。可以通過數組字面量來聲明一個數組:var empty = [];數組第一個值將獲得屬性名稱0,第二個屬性名稱將獲得屬性名稱1,以此類推。

JavaScript中的Regex也是一個對象。Regex的分組有4中:捕獲型,使用圓括弧包括;非捕獲型,使用(?:首碼;向前正向匹配,使用(?=首碼;向前負向匹配,使用(?!首碼。  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.