JavaScript學(xué)習(xí)指南

出版時(shí)間:2009-10  出版社:人民郵電出版社  作者:鮑爾斯  頁(yè)數(shù):337  字?jǐn)?shù):409000  
Tag標(biāo)簽:無(wú)  

前言

  JavaScript最初的設(shè)計(jì)意圖是為了在瀏覽器端(當(dāng)時(shí)就是Netscape Navigatol)載入的Web頁(yè)面和位于服務(wù)器端的應(yīng)用程序之間提供腳本化的接口。由于它早在1995年就出現(xiàn)了,因此已經(jīng)發(fā)展成為Web開(kāi)發(fā)的關(guān)鍵組件,當(dāng)然你也能看到它在其他領(lǐng)域的應(yīng)用。本書(shū)的主題就是JavaScript語(yǔ)言,內(nèi)容包括從最基本的數(shù)據(jù)類(lèi)型(它是所有語(yǔ)言的基礎(chǔ))到最復(fù)雜的特性(包括在Ajax和動(dòng)態(tài)頁(yè)面效果中使用的)的所有方面。當(dāng)你讀完本書(shū)之后,你將掌握應(yīng)用精妙的程序庫(kù)和Web應(yīng)用程序的知識(shí)基礎(chǔ)。本書(shū)讀者本書(shū)假設(shè)讀者熟悉Web頁(yè)面技術(shù),包括CSS和HTML/xHTML。你可以沒(méi)有任何編程經(jīng)驗(yàn),但對(duì)于沒(méi)有編程經(jīng)驗(yàn)的你,有些小節(jié)可能需要多讀幾遍。本書(shū)對(duì)以下讀者將有幫助:  ·希望或需要在個(gè)人網(wǎng)站中集成.1avaScript的人;  ·那些使用如weblogging之類(lèi)的內(nèi)容管理工具,并且希望深入理解這些工具所提供的各種模板中的腳本化組件的開(kāi)發(fā)人員;  ·希望將JavaScript及一些動(dòng)態(tài)Web頁(yè)面、AjaX功能集成到自己網(wǎng)站中的Web開(kāi)發(fā)人員;  ·希望針對(duì)新的客戶(hù)端市場(chǎng)開(kāi)發(fā)Web Service的開(kāi)發(fā)人員;  ·關(guān)注’Web技術(shù)或者教授’Web技術(shù)課程的老師;  ·想更好地理解如何才能為自己的設(shè)計(jì)添加交互性或動(dòng)態(tài)效果的Web頁(yè)面設(shè)計(jì)師;  ·對(duì)Web技術(shù)感興趣的任何人。假設(shè)與方法前面說(shuō)過(guò),本書(shū)將假設(shè)你在HTML和CSS方面有一定經(jīng)驗(yàn),同時(shí)對(duì)Web應(yīng)用程序的工作機(jī)制有基本的理解。編程經(jīng)驗(yàn)并不是必要的,不過(guò)由于本書(shū)涉及.JavaScript的方方面面,因此有些部分可能會(huì)比較復(fù)雜難解。雖然很難的內(nèi)容并不多,但如果要使用新的AiaX程序庫(kù),還是需要對(duì)JavaScript有足夠的理解。

內(nèi)容概要

  本書(shū)系統(tǒng)地介紹了JavaScript的基本語(yǔ)法、基本對(duì)象、調(diào)試工具與排錯(cuò)技術(shù)、事件處理機(jī)制、瀏覽器對(duì)象模型/文檔對(duì)象模型(BOM/DOM)等方面的知識(shí),并通過(guò)一個(gè)復(fù)雜的示例深入探討了Ajax應(yīng)用。本書(shū)提供了許多簡(jiǎn)單易懂、主題鮮明的示例,介紹了大量最佳實(shí)踐和良好編程習(xí)慣,對(duì)提高代碼可讀性、可維護(hù)性均有很高的價(jià)值,并且對(duì)很多跨瀏覽器兼容問(wèn)題進(jìn)行了詳細(xì)說(shuō)明,追蹤了新規(guī)范的發(fā)展?! ”緯?shū)適合于希望通過(guò)JavaScript為自己的網(wǎng)頁(yè)/網(wǎng)站添加活力的讀者,不管你是否有編程經(jīng)驗(yàn),通過(guò)閱讀本書(shū)都能夠很快地掌握這一技術(shù)。在閱讀本書(shū)之前,最好對(duì)CSS、HTML/XHTML有所了解。

作者簡(jiǎn)介

Shelley Powers在實(shí)踐中應(yīng)用Web技術(shù)并發(fā)表各種與Web技術(shù)有關(guān)的文章已經(jīng)長(zhǎng)達(dá)13年之久。她最近在O’Reilly出版的書(shū)涉及語(yǔ)義Web、ajax、JavaScript和Web圖形等多個(gè)領(lǐng)域。她還是狂熱的業(yè)余攝影師,同時(shí)也是Web開(kāi)發(fā)的狂熱愛(ài)好者。

書(shū)籍目錄

第1章 Hello JavaScript!  1.1 “Hello World!”程序  1.2 第二個(gè)“Hello World!”程序   1.2.1 script標(biāo)簽   1.2.2 JavaScript、ECMAScript和JScript的比較   1.2.3 在JavaScript中定義函數(shù)   1.2.4 事件句柄   1.2.5 瀏覽器對(duì)象document   1.2.6 屬性操作符   1.2.7 var關(guān)鍵字和作用域   1.2.8 JavaScript語(yǔ)句   1.2.9 注釋   1.2.10 你沒(méi)看到的:HTML注釋和CDATA小節(jié)  1.3 JavaScript文件  1.4 可訪(fǎng)問(wèn)性和JavaScript最佳實(shí)踐   1.4.1 可訪(fǎng)問(wèn)性指南   1.4.2 noscript 第2章 JavaScript數(shù)據(jù)類(lèi)型和變量  2.1 標(biāo)識(shí)變量   2.1.1 命名規(guī)范  2.2 基本類(lèi)型  2.3 String數(shù)據(jù)類(lèi)型   2.3.1 字符串轉(zhuǎn)義符   2.3.2 字符串編碼   2.3.3 字符串轉(zhuǎn)換  2.4 Boolean數(shù)據(jù)類(lèi)型  2.5 Number數(shù)據(jù)類(lèi)型  2.6 null和undefined變量  2.7 常量:已命名數(shù)值,但不是變量  2.8 知識(shí)測(cè)驗(yàn)  2.9 測(cè)驗(yàn)答案 第3章 操作符和語(yǔ)句  3.1 JavaScript語(yǔ)句的格式  3.2 賦值語(yǔ)句   3.2.1 算術(shù)操作符   3.2.2 一元操作符   3.2.3 操作符的優(yōu)先級(jí)   3.2.4 帶操作符的賦值符   3.2.5 位操作  3.3 條件分支語(yǔ)句和程序流   3.3.1 if...else條件分支語(yǔ)句   3.3.2 switch條件語(yǔ)句  3.4 條件操作符   3.4.1 相同和相等操作符   3.4.2 其他關(guān)系操作符   3.4.3 JavaScript中唯一的三元操作符  3.5 邏輯操作符  3.6 高級(jí)語(yǔ)句:循環(huán)   3.6.1 while循環(huán)   3.6.2 do...while循環(huán)   3.6.3 for循環(huán)  3.7 知識(shí)測(cè)驗(yàn)  3.8 測(cè)驗(yàn)答案 第4章 JavaScript對(duì)象  4.1 基本數(shù)據(jù)類(lèi)型對(duì)象  4.2 布爾值、數(shù)字和字符串   4.2.1 Boolean對(duì)象   4.2.2 Number對(duì)象、靜態(tài)屬性及實(shí)例方法   4.2.3 String對(duì)象  4.3 正則表達(dá)式和RegExp   4.3.1 RegExp方法:test和exec   4.3.2 正則表達(dá)式的應(yīng)用  4.4 Date對(duì)象  4.5 Math對(duì)象   4.5.1 Math的屬性   4.5.2 Math的方法  4.6 JavaScript數(shù)組   4.6.1 FIFO隊(duì)列  4.7 知識(shí)測(cè)驗(yàn)  4.8 測(cè)驗(yàn)答案 第5章 函數(shù)  5.1 聲明式的函數(shù)   5.1.1 函數(shù)的命名規(guī)范和大小   5.1.2 函數(shù)返回值和參數(shù)  5.2 匿名函數(shù)  5.3 函數(shù)字面量   5.3.1 函數(shù)和遞歸   5.3.2 嵌套的函數(shù)、函數(shù)閉包與內(nèi)存泄漏   5.3.3 回調(diào)函數(shù)  5.4 函數(shù)類(lèi)型小結(jié)  5.5 函數(shù)作用域  5.6 函數(shù)就是一個(gè)對(duì)象  5.7 知識(shí)測(cè)驗(yàn)  5.8 測(cè)驗(yàn)答案 第6章 排錯(cuò)、調(diào)試及跨瀏覽器問(wèn)題  6.1 調(diào)試的簡(jiǎn)單方法  6.2 瀏覽器提供的開(kāi)發(fā)和調(diào)試工具   6.2.1 Firefox和Firebug   6.2.2 使用console.log   6.2.3 Firefox、Web Developer toolkit和NoScript   6.2.4 Opera和Dragonfly   6.2.5 Safari/WebKit和Web Inspector   6.2.6 Internet Explorer  6.3 處理瀏覽器之間的差異   6.3.1 對(duì)象檢測(cè)   6.3.2 對(duì)象檢測(cè)失敗的場(chǎng)合   6.3.3 DOCTYPE、X-UA-Compatible和Quirks模式   6.3.4 阻止向后兼容:IE 8.0中的Meta標(biāo)簽http-equiv  6.4 知識(shí)測(cè)驗(yàn)  6.5 測(cè)驗(yàn)答案 第7章 捕獲事件  7.1 事件  7.2 級(jí)事件處理   7.2.1 Event對(duì)象   7.2.2 事件冒泡   7.2.3 事件句柄和this  7.3 DOM Level 2事件模型   7.3.1 生成事件  7.4 知識(shí)測(cè)驗(yàn)  7.5 測(cè)驗(yàn)答案 第8章 表單、表單事件及校驗(yàn)  8.1 為表單添加事件:不同方法   8.1.1 跨瀏覽器兼容的事件處理   8.1.2 取消一個(gè)事件  8.2 選擇列表框   8.2.1 動(dòng)態(tài)修改選擇列表框   8.2.2 選擇列表框和自動(dòng)選擇  8.3 單選按鈕和復(fù)選框  8.4 文本框、多行文本框、密碼框和隱藏表單域元素   8.4.1 文本驗(yàn)證  8.5 input元素和基于正則表達(dá)式的驗(yàn)證  8.6 表單、沙箱和XSS  8.7 知識(shí)測(cè)驗(yàn)  8.8 測(cè)驗(yàn)答案  第9章 瀏覽器就像個(gè)難題箱  9.1 瀏覽器結(jié)構(gòu)概述  9.2 window對(duì)象  9.3 窗口的創(chuàng)建和控件   9.3.1 對(duì)話(huà)框:alert、confirm和prompt   9.3.2 創(chuàng)建自定義窗口   9.3.3 維護(hù)窗口  9.4 frame對(duì)象   9.4.1 location對(duì)象   9.4.2 基于iframe的遠(yuǎn)程腳本  9.5 添加并控制定時(shí)器  9.6 history、screen和navigator對(duì)象   9.6.1 history對(duì)象   9.6.2 screen對(duì)象   9.6.3 navigator對(duì)象   9.6.4 history、screen和navigator屬性的實(shí)際應(yīng)用  9.7 document對(duì)象   9.7.1 鏈接   9.7.2 圖像  9.8 innerHTML  9.9 知識(shí)測(cè)驗(yàn)  9.10 測(cè)驗(yàn)答案 第10章 cookie和其他客戶(hù)端存儲(chǔ)技術(shù)  10.1 JavaScript沙箱與cookie安全   10.1.1 同源安全策略   10.1.2 使用document.domain  10.2 cookie全解   10.2.1 cookie的保存和讀取  10.3 Flash共享對(duì)象、Google Gears和HTML5 DOM存儲(chǔ)  10.4 知識(shí)測(cè)驗(yàn)  10.5 測(cè)驗(yàn)答案 第11章 DOM或以樹(shù)形展示的Web頁(yè)面  11.1 兩個(gè)接口的傳說(shuō)  11.2 DOM HTML API   11.2.1 DOM HTML對(duì)象及其屬性   11.2.2 DOM(HTML)集合  11.3 理解DOM:Core API   11.3.1 DOM樹(shù)   11.3.2 節(jié)點(diǎn)屬性和方法   11.3.3 DOM核心文檔對(duì)象  11.4 元素及其上下文內(nèi)訪(fǎng)問(wèn)  11.5 修改文檔樹(shù)  11.6 知識(shí)測(cè)驗(yàn)  11.7 測(cè)驗(yàn)答案 第12章 動(dòng)態(tài)頁(yè)面  12.1 JavaScript、CSS和DOM   12.1.1 樣式屬性  12.2 字體和文本   12.2.1 字體樣式屬性   12.2.2 文本屬性  12.3 定位和動(dòng)畫(huà)   12.3.1 動(dòng)態(tài)定位   12.3.2 拖放操作  12.4 大小和修剪   12.4.1 溢出和動(dòng)態(tài)內(nèi)容   12.4.2 修剪矩形  12.5 顯示、可視性和不透明性   12.5.1 實(shí)現(xiàn)正確效果的正確工具   12.5.2 即時(shí)信息  12.6 再探DOM:可折疊表單、查詢(xún)選擇器和類(lèi)名  12.7 知識(shí)測(cè)驗(yàn)  12.8 測(cè)驗(yàn)答案 第13章 創(chuàng)建自定義JavaScript對(duì)象  13.1 JavaScript對(duì)象和原型   13.1.1 原型  13.2 創(chuàng)建自定義JavaScript對(duì)象   13.2.1 深入函數(shù)   13.2.2 公有和私有屬性   13.2.3 getter和setter  13.3 對(duì)象封裝  13.4 構(gòu)造函數(shù)鏈和JavaScript繼承  13.5 一次性對(duì)象  13.6 對(duì)象庫(kù):為復(fù)用而封裝對(duì)象  13.7 高級(jí)錯(cuò)誤處理技術(shù)(try、throw和catch)  13.8 知識(shí)測(cè)驗(yàn)  13.9 測(cè)驗(yàn)答案 第14章 使用Ajax  14.1 Ajax的工作原理  14.2 Hello Ajax World!  14.3 XMLHttpRequest對(duì)象及請(qǐng)求的準(zhǔn)備與發(fā)送   14.3.1 對(duì)象,對(duì)象,誰(shuí)是對(duì)象   14.3.2 XMLHttpRequest對(duì)象的方法  14.4 處理Web請(qǐng)求的應(yīng)答   14.4.1 檢查Ajax請(qǐng)求的readyState和status值   14.4.2 處理Web請(qǐng)求應(yīng)答  14.5 Ajax:不僅是代碼   14.5.1 Ajax的動(dòng)態(tài)特性   14.5.2 Ajax的可訪(fǎng)問(wèn)性和適度降格   14.5.3 安全和工作區(qū)  14.6 JavaScript和Ajax程序庫(kù)  14.7 知識(shí)測(cè)驗(yàn)  14.8 測(cè)驗(yàn)答案 第15章 Ajax數(shù)據(jù):XML或JSON  15.1 XML格式的Ajax應(yīng)答   15.1.1 數(shù)據(jù)的MIME類(lèi)型   15.1.2 在服務(wù)器端生成XML數(shù)據(jù)   15.1.3 在客戶(hù)端處理XML數(shù)據(jù)  15.2 JSON   15.2.1 一個(gè)簡(jiǎn)單的JSON應(yīng)用程序   15.2.2 JSON對(duì)象  15.3 知識(shí)測(cè)驗(yàn)  15.4 測(cè)驗(yàn)答案 

章節(jié)摘錄

  第1章 Hello JavaScript!  1.4 可訪(fǎng)問(wèn)性和JavaScript最佳實(shí)踐  如果有理想的世界,那么開(kāi)發(fā)人員都希望訪(fǎng)問(wèn)自己網(wǎng)站的用戶(hù)使用相同的操作系統(tǒng)、相同的瀏覽器,并且都啟用了JavaScript。用戶(hù)不會(huì)使用移動(dòng)電話(huà)或者其他奇怪的設(shè)備,視力不好的人也不需要使用屏幕朗讀設(shè)備,聽(tīng)力不好的人也不需要語(yǔ)音導(dǎo)航設(shè)備。然而理想總歸是理想,現(xiàn)實(shí)往往與之不一樣,許多JavaScript開(kāi)發(fā)人員都需要考慮這些現(xiàn)實(shí)的情況。  許多最佳實(shí)踐都是與JavaScfipt相關(guān)的,但最重要的實(shí)踐有這么一條:任何JavaScript功能都不應(yīng)該成為網(wǎng)站和用戶(hù)之間的障礙?! ∈裁词恰熬W(wǎng)站和用戶(hù)之間的障礙”呢?JavaScript不應(yīng)當(dāng)阻礙那些沒(méi)有啟用JavaScdpt的用戶(hù)正常訪(fǎng)問(wèn)網(wǎng)站。如果基于JavaScript創(chuàng)建了下拉框菜單,那么同時(shí)也應(yīng)該為沒(méi)有啟用JavaScfipt的用戶(hù)提供非基于JavaScfipt的替代選項(xiàng)。如果訪(fǎng)問(wèn)站點(diǎn)的用戶(hù)視力不佳,那么當(dāng)動(dòng)態(tài)地往頁(yè)面添加指令的時(shí)候,也應(yīng)該考慮對(duì)語(yǔ)音瀏覽器的支持。  許多開(kāi)發(fā)者并不遵循這些最佳實(shí)踐,因?yàn)檫@需要做更多的工作。然而這并不應(yīng)成為負(fù)擔(dān),因?yàn)檫@樣能夠增加站點(diǎn)的可訪(fǎng)問(wèn)性。此外,現(xiàn)在的許多公司都期望自己網(wǎng)站的可訪(fǎng)問(wèn)性達(dá)到一定程度。當(dāng)然,應(yīng)該從一開(kāi)始就養(yǎng)成創(chuàng)建高可訪(fǎng)問(wèn)性頁(yè)面的習(xí)慣,而不是每次去解決頁(yè)面可訪(fǎng)問(wèn)性的問(wèn)題。  1.4.1 可訪(fǎng)問(wèn)性指南  關(guān)于如何創(chuàng)建高可訪(fǎng)問(wèn)性的JavaScript應(yīng)用,在WebAIM網(wǎng)站上能夠找到一份很詳盡的指南(http://www.webaim.org/techniques/javascript)。該指南介紹了在哪些情況下應(yīng)該避免使用JavaScript,如使用JavaScript創(chuàng)建菜單以及其他導(dǎo)航。然而,該指南也介紹了如何利用JavaScript來(lái)提高站點(diǎn)的可訪(fǎng)問(wèn)性?! ”緯?shū)的建議是判斷這些事件是否能由鼠標(biāo)觸發(fā)。例如,與其只捕獲鼠標(biāo)點(diǎn)擊事件,那么還不如捕獲鍵盤(pán)或鼠標(biāo)所觸發(fā)的事件,如onfocus和onblur事件。如果是一個(gè)下拉框菜單,那么應(yīng)該添加一個(gè)獨(dú)立的頁(yè)面,并提供靜態(tài)的菜單。

媒體關(guān)注與評(píng)論

  “無(wú)論你是初學(xué)者還是有經(jīng)驗(yàn)的程序員,當(dāng)你學(xué)習(xí)一門(mén)新語(yǔ)言時(shí),我都會(huì)強(qiáng)烈建議你閱讀《JavaScript學(xué)習(xí)指南(第2版)》。Shelley所采用的直觀易懂的教學(xué)方法,能夠幫助你掌握該語(yǔ)言的基礎(chǔ)和細(xì)節(jié),以便你能夠在自己網(wǎng)站上更好地使用它。”  ——Amhonv T Holdener III,Ajax:The Definitive Guide一書(shū)的作者

編輯推薦

  通過(guò)列舉JavaScript應(yīng)用的最佳實(shí)踐和示例,本書(shū)展示了如何將該語(yǔ)言集成到瀏覽器環(huán)境中,及如何在符合標(biāo)準(zhǔn)的網(wǎng)站中應(yīng)用這些已通過(guò)實(shí)踐驗(yàn)證的編碼技術(shù)?! ”緯?shū)內(nèi)容:  JavaScript應(yīng)用程序的結(jié)構(gòu),包括基本的語(yǔ)句和程序控制結(jié)構(gòu);  標(biāo)識(shí)JavaScriptqb的不同對(duì)象Strin9、Number、Boolean、函數(shù)等;  使用瀏覽器調(diào)試工具和排錯(cuò)技術(shù);  事件處理機(jī)制、表單事件以及帶表單的JavaScript應(yīng)用程序;  基于瀏覽器對(duì)象模型(BOM)、文檔對(duì)象模型(DOM)以及所創(chuàng)建的自定義對(duì)象完成開(kāi)發(fā);  瀏覽器端的cookie及更新的客戶(hù)端存儲(chǔ)技術(shù);  在Ajax應(yīng)用程序中使用XML或JSON表示法的細(xì)節(jié)。本書(shū)遵循已被驗(yàn)證的學(xué)習(xí)法則,幫助讀者逐步理解各種概念,使讀者掌握在各種瀏覽器中創(chuàng)建強(qiáng)大的、快速響應(yīng)的應(yīng)用程序的方法?!  盁o(wú)論你是初學(xué)者還是有經(jīng)驗(yàn)的程序員,當(dāng)你學(xué)習(xí)一門(mén)新語(yǔ)言時(shí),我都會(huì)強(qiáng)烈建議你閱讀本書(shū)。Shelley所采用的直觀易懂的教學(xué)方法,能夠幫助你掌握該語(yǔ)言的基礎(chǔ)和細(xì)節(jié),以便你能夠在自己網(wǎng)站上更好地使用它?!薄  狝mhonv T Holdener III,Ajax:The Definitive Guide一書(shū)的作者

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    JavaScript學(xué)習(xí)指南 PDF格式下載


用戶(hù)評(píng)論 (總計(jì)7條)

 
 

  •   入門(mén)者可以選擇,當(dāng)然如果只是輔助寫(xiě)html的就可以不買(mǎi)了
  •   兩天半就到了,書(shū)的質(zhì)量不錯(cuò),內(nèi)容也不錯(cuò),就是圖文講解不是很好。
  •   開(kāi)了其他的同類(lèi)書(shū),還是這本好。
  •   很好,可以買(mǎi)來(lái)讀一下
  •   基礎(chǔ)教材,值得一讀。
  •   比較實(shí)用的一本好書(shū)
  •   講的很全面,較注重細(xì)節(jié),適合初學(xué)者使用~
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7