學習JavaScript功能創(chuàng)建強大的Web應用程序
JavaScript把Web從被動媒介轉(zhuǎn)變?yōu)樨S富、動態(tài)的交互式媒介。
通過這本內(nèi)容的入門圖書,可以學會JavaScript目前常用的使用方式——利用的工具和技術(shù),創(chuàng)建動態(tài)Web應用。本書講解了如何高效地使用JavaScript框架、函數(shù)和現(xiàn)代瀏覽器,如何使用HTML5實現(xiàn)有效的編碼實踐。
主要內(nèi)容
以的編碼風格使用JavaScript
淺顯易懂地解釋JSON、函數(shù)、事件和功能檢測
講解查找、創(chuàng)建、維護頁面中元素的基礎(chǔ)知識
使用新的HTML5元素和相關(guān)API
新功能的技巧,包括定位、本地存儲等
演示如何使用JavaScript向Web服務(wù)器發(fā)出HTTP請求(Ajax)
分析常見錯誤以及調(diào)試和錯誤處理方法
每章后的練習(并附有答案)提供了充分的實踐機會,本書的網(wǎng)站也提供了書中所有示例的可下載代碼
導語_點評_推薦詞
Jeremy McPeak是一位專業(yè)程序員和分析員,對JavaScript和C # 有很深的理解。他與其他作者合作編寫了本書的前兩版,并獨立編寫了JavaScript24-Hour Trainer,得到了廣泛的好評。他服務(wù)一家以Web為中心的在線學習站點Tuts Code,主題包括JavaScript、C#和.NET Framework。
Paul Wilton擁有自己的公司,為假日酒店提供在線預訂系統(tǒng),該系統(tǒng)主要使用JavaScript開發(fā)。
目 錄
第1章 JavaScript與Web概述 1
1.1 JavaScript簡介 1
1.1.1 JavaScript的含義 1
1.1.2 JavaScript與Web 2
1.1.3 JavaScript的功能 3
1.1.4 創(chuàng)建JavaScript Web應用程序所需的工具 4
1.2 腳本的使用場合 6
1.2.1 鏈接外部JavaScript文件 6
1.2.2 使用外部文件的優(yōu)點 7
1.3 及時個簡單的JavaScript程序 7
1.4 編寫更多的JavaScript程序 9
1.5 瀏覽器和兼容性問題簡述 13
1.6 小結(jié) 14
第2章 數(shù)據(jù)類型與變量 15
2.1 JavaScript中的數(shù)據(jù)類型 15
2.1.1 數(shù)值數(shù)據(jù) 16
2.1.2 文本數(shù)據(jù) 16
2.1.3 布爾數(shù)據(jù) 17
2.2 變量—— 存儲在內(nèi)存中的數(shù)據(jù) 18
2.2.1 創(chuàng)建變量并賦值 19
2.2.2 用其他變量的值為
變量賦值 21
2.3 使用數(shù)據(jù)—— 計算數(shù)值及基本字符串操作 23
2.3.1 數(shù)值計算 23
2.3.2 運算符的優(yōu)先級 27
2.3.3 基本的字符串操作 31
2.3.4 字符串與數(shù)值的混合操作 33
2.4 數(shù)據(jù)類型轉(zhuǎn)換 34
2.5 數(shù)組 38
2.6 小結(jié) 46
2.7 習題 46
第3章 決策與循環(huán) 49
3.1 決策語句—— if和switch語句 50
3.1.1 比較運算符 50
3.1.2 if語句 52
3.1.3 邏輯運算符 56
3.1.4 在if語句中使用多個條件 58
3.1.5 else和else if 61
3.1.6 字符串的比較 63
3.1.7 switch語句 63
3.2 循環(huán)—— for語句和while語句 68
3.2.1 for循環(huán) 68
3.2.2 for...in 循環(huán) 71
3.2.3 while循環(huán) 72
3.2.4 do...while循環(huán) 73
3.2.5 break和continue語句 74
3.3 小結(jié) 75
3.4 習題 76
第4章 函數(shù)與作用域 79
4.1 創(chuàng)建自定義函數(shù) 80
4.2 作用域和生存期 83
4.2.1 全局作用域 83
4.2.2 函數(shù)作用域 84
4.2.3 標識符查找 84
4.3 將函數(shù)用作值 85
4.4 小結(jié) 88
4.5 習題 89
第5章 JavaScript —— 基于對象的語言 91
5.1 基于對象的程序設(shè)計 91
5.1.1 對象的含義 92
5.1.2 JavaScript中的對象 92
5.1.3 使用JavaScript對象 93
5.1.4 基本數(shù)據(jù)類型與對象 95
5.2 JavaScript的內(nèi)置對象類型 96
5.2.1 String對象 96
5.2.2 Array對象 106
5.2.3 Math對象 116
5.2.4 Number對象 123
5.2.5 toFixed()方法 124
5.2.6 Date對象 125
5.3 創(chuàng)建自定義對象 133
5.4 創(chuàng)建對象的新類型(引用類型) 136
5.5 小結(jié) 139
5.6 習題 140
第6章 字符串操作 141
6.1 新的字符串方法 142
6.1.1 split()方法 142
6.1.2 replace()方法 144
6.1.3 search()方法 144
6.1.4 match()方法 144
6.2 正則表達式 145
6.2.1 簡單的正則表達式 146
6.2.2 正則表達式:特殊字符 148
6.2.3 包含所有的可能性 156
6.2.4 正則表達式的分組 156
6.2.5 重用字符組 158
6.3 String對象 159
6.3.1 split()方法 160
6.3.2 replace()方法 161
6.3.3 search()方法 164
6.3.4 match()方法 164
6.4 使用RegExp對象的構(gòu)造函數(shù) 167
6.4.1 驗證電話號碼 169
6.4.2 驗證郵政編碼 171
6.4.3 驗證電子郵件地址 172
6.4.4 驗證域名 173
6.5 小結(jié) 174
6.6 習題 175
第7章 日期、時間和計時器 177
7.1 世界時 178
7.2 網(wǎng)頁中的計時器 183
7.2.1 一次性計時器 183
7.2.2 創(chuàng)建定期觸發(fā)的計時器 185
7.3 小結(jié) 187
7.4 習題 187
第8章 瀏覽器程序設(shè)計 189
8.1 瀏覽器對象簡介 190
8.1.1 window對象 191
8.1.2 history對象 192
8.1.3 location對象 192
8.1.4 navigator對象 193
8.1.5 screen對象 197
8.1.6 document對象 197
8.1.7 使用document對象 197
8.1.8 images集合 200
8.1.9 links集合 201
8.2 確定用戶的瀏覽器 201
8.2.1 特性檢測 202
8.2.2 瀏覽器嗅探 204
8.3 小結(jié) 208
8.4 習題 209
第9章 編寫DOM腳本 211
9.1 Web標準 212
9.1.1 HTML 214
9.1.2 ECMAScript 214
9.2 文檔對象模型 215
9.2.1 DOM標準 215
9.2.2 DOM與BOM的區(qū)別 216
9.2.3 將HTML文檔表示為樹型結(jié)構(gòu) 217
9.2.4 DOM核心對象 219
9.2.5 DOM對象及其屬性和方法 220
9.3 操作DOM 238
9.3.1 訪問元素 238
9.3.2 改變元素的外觀 238
9.3.3 定位和移動內(nèi)容 242
9.3.4 示例:動態(tài)廣告 243
9.4 小結(jié) 247
9.5 習題 247
第10章 事件 249
10.1 事件的類型 250
10.2 將代碼連接到事件 250
10.3 標準事件模型 260
10.4 舊版本IE中的事件處理 274
10.5 編寫跨瀏覽器的代碼 282
10.6 內(nèi)置拖放操作 292
10.6.1 使內(nèi)容可以拖動 293
10.6.2 創(chuàng)建釋放目標 294
10.6.3 傳輸數(shù)據(jù) 299
10.7 小結(jié) 307
10.8 習題 308
第11章 HTML表單:與用戶交互 309
11.1 HTML表單 309
11.2 傳統(tǒng)Form對象的屬性和方法 311
11.2.1 表單中的HTML元素 312
11.2.2 共有的屬性和方法 313
11.2.3 按鈕元素 315
11.2.4 文本元素 318
11.2.5 textarea元素 324
11.2.6 復選框和單選按鈕 327
11.2.7 選擇框 336
11.3 HTML5表單對象的屬性和方法 347
11.3.1 新的輸入類型 347
11.3.2 新元素 351
11.4 小結(jié) 357
11.5 習題 359
第12章 JSON 361
12.1 XML 362
12.2 JSON 363
12.2.1 簡單值 363
12.2.2 對象 364
12.2.3 數(shù)組 365
12.2.4 串行化為JSON 366
12.2.5 解析JSON 366
12.3 小結(jié) 370
12.4 習題 370
第13章 數(shù)據(jù)存儲 371
13.1 烘焙及時個cookie 372
13.1.1 新鮮出爐的cookie 372
13.1.2 cookie字符串 381
13.2 創(chuàng)建cookie 384
13.3 獲取cookie的值 387
13.4 cookie的局限性 392
13.4.1 用戶可能禁用cookie 392
13.4.2 數(shù)字和信息的限制 393
13.5 cookie的安全性和IE 394
13.6 Web存儲 395
13.6.1 設(shè)置數(shù)據(jù) 396
13.6.2 獲取數(shù)據(jù) 396
13.6.3 刪除數(shù)據(jù) 397
13.6.4 把數(shù)據(jù)存儲為字符串 397
13.6.5 查看Web存儲的內(nèi)容 400
13.7 小結(jié) 401
13.8 習題 401
第14章 Ajax 403
14.1 Ajax的含義 403
14.1.1 Ajax的作用 404
14.1.2 瀏覽器支持 405
14.2 使用XMLHttpRequest對象 405
14.2.1 創(chuàng)建XmlHttpRequest對象 406
14.2.2 使用XMLHttpRequest對象 406
14.2.3 異步請求 408
14.3 創(chuàng)建簡單的Ajax模塊 409
14.3.1 規(guī)劃HttpRequest模塊 409
14.3.2 HttpRequest構(gòu)造函數(shù) 409
14.3.3 創(chuàng)建send()方法 411
14.3.4 完整的代碼 411
14.4 使用Ajax驗證表單字段 412
14.4.1 請求信息 413
14.4.2 接收到的數(shù)據(jù) 413
14.4.3 準備工作 413
14.5 注意事項 422
14.5.1 安全性問題 422
14.5.2 可用性問題 423
14.6 小結(jié) 430
14.7 習題 430
第15章 HTML5媒體 433
15.1 入門 434
15.2 給媒體編寫腳本 437
15.2.1 方法 437
15.2.2 屬性 440
15.2.3 事件 446
15.3 小結(jié) 450
15.4 習題 451
第16章 jQuery 453
16.1 獲得jQuery 454
16.2 jQuery的API 455
16.2.1 選擇元素 455
16.2.2 修改樣式 457
16.2.3 創(chuàng)建、追加和刪除元素 460
16.2.4 處理事件 461
16.2.5 用jQuery重寫選項卡 463
16.2.6 把jQuery用于Ajax 466
16.3 小結(jié) 473
16.4 習題 474
第17章 其他JavaScript庫 475
17.1 Modernizr 476
17.1.1 獲得Modernizr 477
17.1.2 Modernizr的API 478
17.1.3 自定義測試 479
17.1.4 加載資源 480
17.2 Prototype 485
17.2.1 獲得Prototype 485
17.2.2 測試Prototype安裝 486
17.2.3 檢索元素 488
17.2.4 處理樣式 489
17.2.5 創(chuàng)建、插入和刪除元素 490
17.2.6 使用事件 491
17.2.7 用Prototype重寫選項卡 492
17.2.8 使用Ajax支持 494
17.3 MooTools 501
17.3.1 獲得MooTools 501
17.3.2 測試MooTools安裝 501
17.3.3 查找元素 503
17.3.4 修改樣式 504
17.3.5 創(chuàng)建、插入和刪除元素 505
17.3.6 使用事件 506
17.3.7 用MooTools重寫選項卡 507
17.3.8 MooTools中的Ajax支持 510
17.4 小結(jié) 516
17.5 習題 517
第18章 常見錯誤、調(diào)試和錯誤處理 519
18.1 一些常見錯誤 519
18.1.1 未經(jīng)定義的變量 520
18.1.2 區(qū)分大小寫 521
18.1.3 不匹配的大括號 522
18.1.4 不匹配的圓括號 522
18.1.5 賦值(=)而不是相等(==) 523
18.1.6 將方法和屬性混為一談 523
18.1.7 在連接字符串時未使用加號( ) 524
18.2 錯誤處理 525
18.2.1 避免錯誤 525
18.2.2 try...catch語句 526
18.3 調(diào)試 533
18.3.1 在Chrome (和Opera)中調(diào)試 534
18.3.2 在Internet Explorer中調(diào)試 543
18.3.3 在Firefox中用Firebug調(diào)試 547
18.3.4 在Safari中調(diào)試 550
18.4 小結(jié) 552
18.5 習題 553
附錄A 參考答案 555
附錄B JavaScript核心參考 623
附錄C W3C DOM參考 647
附錄D Latin-1字符集 671
一如既往地好
不錯哦
很好
好
真好,打開就能用
不錯
還好啦
good,很好
書很好,經(jīng)典之作,
書很好,經(jīng)典之作,
才看了幾十頁,內(nèi)容講的很好。值得買。
包裝很差??!
支持當當,非常好的質(zhì)量
基礎(chǔ)知識內(nèi)容
可以,包裝簡單一點,但是書沒有損壞
包裝不好,要的發(fā)票沒開
講的還蠻淺顯易懂的
快遞很快,還沒看
不錯,入門經(jīng)典
書很好!!
美容適合初學者,不錯
包裝真特么差,都破了,我也是不懂當當?shù)目爝f這么差。
非常滿意的一次購物。
還沒看,期待。
入門書,慢慢看
在書店看完之后在當當下單的,書是一樣的,關(guān)鍵便宜了好多,支持支持
我想說,快遞的包裝塑料袋太薄了,書寄到的時候包裝已經(jīng)磨損,書的封面有很多的刮痕了,我不需要賠償,給你們建議只希望你們在快遞的包裝上加厚一點。
送貨挺快的,昨晚凌晨4點下單下午3點送到。就是包裝不太好,用個袋子隨便裝一下,打開包裝書本都有折痕了,書封面有比較厲害的折痕哈。要開始學習啦,其他就不說了,買書就是要劃的,總會變舊哈