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