 
			 
				內容簡介
     本書介紹瞭腳本語言的基礎知識和實用技術。全書共11章,內容包括概述、編程基礎、流程控製語句、對象編程、本地對象、瀏覽器對象(BOM)、文檔對象(DOM)、事件處理、函數特性、數據交換格式與數據持久化等技術,並應用本書所討論的技術內容製作一個服飾設計網站。
 本書配有大量的示例和練習,介紹詳略得當,所介紹的技術具有很強的實用性、前瞻性,符閤市場就業需求。讀者通過本書的學習可以快速掌握編程基本功。 
目錄
 第1章  程序概述 /1
 1.1  學習程序設計 /1
 1.2  簡介 /2
 1.3  開發應用程序 /5
 【課堂案例1-1】:第1個程序 /7
 第2章  程序的構成——函數 /10
 2.1  函數的使用 /10
 【課堂案例2-1】:在網頁上輸齣消息 /10
 【課堂案例2-2】:在網頁上顯示圖片 /11
 【課堂案例2-3】:在網頁中播放視頻,顯示視頻信息 /12
 2.2  函數的參數 /13
 【課堂案例2-4】:使用參數傳遞姓氏和名字,在網頁上輸齣姓名 /14
 【課堂案例2-5】:定義函數area(),用於計算矩形麵積 /15
 【課堂案例2-6】:按照參數顯示圖片 /16
 2.3  函數的返迴值 /17
 【課堂案例2-7】:計算任意3個數的平均值 /17
 【課堂案例2-8】:測試return語句功能 /18
 【課堂案例2-9】:製作簡易杏仁巧剋力 /19
 【課堂案例2-10】:計算實發工資 /21
 2.4  函數的嵌套定義 /21
 【課堂案例2-11】:計算兩個圓的麵積之和 /22
 *2.5  高級函數特性 /22
 【課堂案例2-12】:調用匿名函數 /22
 【課堂案例2-13】:使用匿名函數限製變量的作用域 /24
 【課堂案例2-14】:使用閉包(closure)特性調整頁麵的字號 /25
 【課堂案例2-15】:數組作參數,計算購物總金額 /28
 【課堂案例2-16】:使用參數對象Arguments來計算任意n個數的和 /29
 【課堂案例2-17】:使用函數對象編寫函數測試頁麵 /30
 【課堂案例2-18】:使用函數遞歸,輸齣遞增的數字序列 /32
 2.6  本章練習 /33
 第3章  語言基礎 /37
 3.1  基本數據類型 /37
 【課堂案例3-1】:數據類型測試及轉換 /40
 3.2  變量和常量 /41
 【課堂案例3-2】:變量的定義和使用 /41
 【課堂案例3-3】:變量的賦值 /42
 【課堂案例3-4】:變量的作用域 /43
 【課堂案例3-5】:使用常量PI,轉換角度與弧度 /45
 3.3  運算符和錶達式 /46
 【課堂案例3-6】:算術運算符使用示例 /46
 【課堂案例3-7】:賦值運算符使用示例 /48
 【課堂案例3-8】:使用關係運算符、條件運算符判斷用戶輸入的年齡 /50
 【課堂案例3-9】:邏輯運算符使用示例 /51
 【課堂案例3-10】:字符串運算符示例 /52
 【課堂案例3-11】:位運算符示例 /53
 【課堂案例3-12】:使用typeof運算符檢測數據類型 /55
 3.4  本章練習 /55
 第4章  語句 /59
 4.1  語句和基本程序結構 /59
 4.2  選擇語句 /60
 【課堂案例4-1】:使用單分支if語句判斷兩個數字中的較大數 /60
 【課堂案例4-2】:使用if語句將兩個數字按從小到大的順序輸齣 /61
 【課堂案例4-3】:使用if語句檢查參數值的有效性 /62
 【課堂案例4-4】:使用if…else語句計算數字的絕對值 /62
 【課堂案例4-5】:使用if…else語句判斷成績是否及格 /63
 【課堂案例4-6】:使用if嵌套刪除文件(僞代碼) /65
 【課堂案例4-7】:使用switch語句查詢簡單的日程錶 /66
 4.3  循環語句 /68
 【課堂案例4-8】:使用while語句輸齣遞增的數字序列 /68
 【課堂案例4-9】:使用while語句在網頁上顯示一組圖片 /69
 【課堂案例4-10】:使用do…while語句計算100到500之間所有整數的和 /70
 【課堂案例4-11】:使用do…while語句計算m到n之間所有偶數的和 /71
 【課堂案例4-12】:使用for語句輸齣1到n之間所有的整數 /72
 4.4  循環控製語句 /73
 【課堂案例4-13】:使用break語句計算最小公倍數 /73
 【課堂案例4-14】:continue語句演示 /74
 4.5  循環嵌套 /74
 【課堂案例4-15】:使用二重循環嵌套在頁麵上顯示五子棋棋盤 /75
 4.6  異常處理 /76
 【課堂案例4-16】:使用throw語句拋齣異常 /76
 【課堂案例4-17】:使用try…catch()…finally處理異常 /77
 4.7  本章練習 /79
 第5章  基於原型的麵嚮對象編程 /86
 5.1  對象編程概述 /86
 5.2  自定義對象的創建和使用 /87
 【課堂案例5-1】:使用Object創建自定義對象book,用於描述圖書信息 /87
 【課堂案例5-2】:使用Object創建自定義對象calc,用於簡單數學計算 /88
 【課堂案例5-3】:使用構造函數創建自定義對象phone,用於描述電話信息 /89
 【課堂案例5-4】:創建圖片對象,使用this訪問對象自身的屬性和方法 /90
 【課堂案例5-5】:使用with簡化對象操作 /91
 【課堂案例5-6】:使用instanceof運算符判斷對象類型 /93
 【課堂案例5-7】:使用instanceof運算符檢查參數的類型 /94
 【課堂案例5-8】:使用for…in 循環遍曆對象成員 /95
 【課堂案例5-9】:使用私有對象屬性實現數據隱藏 /96
 【課堂案例5-10】:為屬性添加賦值方法(Setter)和取值方法(Getter) /97
 【課堂案例5-11】:使用原型(prototype)擴展對象類型 /99
 5.3  對象繼承 /100
 【課堂案例5-12】:使用call()方法實現對象繼承 /100
 【課堂案例5-13】:使用原型鏈(Prototype Chain)實現對象繼承 /101
 5.4  定義對象的不同方式 /103
 【課堂案例5-14】:使用工廠函數方式創建對象 /103
 【課堂案例5-15】:使用混閤的構造函數/原型方式創建對象 /104
 【課堂案例5-16】:使用動態原型方式創建對象 /106
 5.5  本章練習 /107
 第6章  本地對象 /109
 6.1  本地對象概述 /109
 6.2  Boolean對象 /109
 【課堂案例6-1】:比較布爾值與布爾對象的區彆 /110
 【課堂案例6-2】:復製布爾對象 /111
 6.3  Number對象 /112
 【課堂案例6-3】:使用Number對象獲取數值極限 /113
 【課堂案例6-4】:將數字轉換成字符串 /113
 【課堂案例6-5】:設置數值精確度 /114
 【課堂案例6-6】:數值進製轉換 /115
 6.4  String對象 /116
 【課堂案例6-7】:閤成新的字符串 /118
 【課堂案例6-8】:顯示字符串的Unicode編碼 /119
 【課堂案例6-9】:截取字符串內容 /119
 【課堂案例6-10】:在字符串中精確查找指定內容 /121
 【課堂案例6-11】:在字符串中進行模糊查找 /122
 【課堂案例6-12】:精確查找替換字符串內容 /123
 【課堂案例6-13】:將字符串分割成數組,提取英文句子中前3個單詞 /124
 【課堂案例6-14】:轉換字母大小寫 /125
 【課堂案例6-15】:為字符串添加樣式 /126
 6.5  RegExp對象 /127
 【課堂案例6-16】:使用正則錶達式替換字符串中的文本 /128
 【課堂案例6-17】:使用正則錶達式驗證電子郵箱格式 /129
 【課堂案例6-18】:使用正則錶達式交換單詞的位置 /130
 6.6  Array對象 /131
 【課堂案例6-19】:使用Array對象創建數組 /132
 【課堂案例6-20】:使用for…in循環遍曆數組,並找到最大值 /133
 【課堂案例6-21】:對數組進行排序 /134
 【課堂案例6-22】:使用Array提供的方法添加、刪除或替換數組元素 /135
 【課堂案例6-23】:將數組轉換成字符串 /136
 【課堂案例6-24】:使用現有數組元素生成新數組 /137
 【課堂案例6-25】:使用迴調函數處理數組元素 /139
 【課堂案例6-26】:使用二維數組 /141
 6.7  Math對象 /143
 【課堂案例6-27】:使用Math對象完成數學計算1 /144
 【課堂案例6-28】:使用Math對象完成數學計算2 /144
 6.8  Date對象 /146
 【課堂案例6-29】:創建Date對象 /148
 【課堂案例6-30】:使用Date對象計算程序運行時間 /150
 【課堂案例6-31】:使用Date對象的方法設置/獲取日期時間信息 /151
 6.9  Error對象 /152
 【課堂案例6-32】:使用自定義Error對象拋齣異常 /153
 【課堂案例6-33】:處理係統拋齣的異常 /154
 6.10  全局對象 /155
 【課堂案例6-34】:使用全局方法 /156
 6.11  本章練習 /157
 第7章  瀏覽器對象模型(BOM) /167
 7.1  瀏覽器對象模型概述 /167
 7.2  window對象 /168
 【課堂案例7-1】:獲取瀏覽器窗口的位置和大小 /169
 【課堂案例7-2】:控製瀏覽器窗口的位置和大小 /170
 【課堂案例7-3】:使用模式對話框 /173
 【課堂案例7-4】:製作簡單的數字時鍾 /175
 【課堂案例7-5】:在網頁中實現滾動屏幕功能 /176
 7.3  navigator對象 /178
 【課堂案例7-6】:獲取瀏覽器及操作係統的相關信息 /179
 【課堂案例7-7】:獲取當前瀏覽器安裝的插件信息 /180
 7.4  location對象 /181
 【課堂案例7-8】:獲取瀏覽器URL的相關信息 /182
 【課堂案例7-9】:使用location對象實現頁麵跳轉和刷新 /182
 【課堂案例7-10】:創建頁麵導航 /184
 7.5  history對象 /186
 【課堂案例7-11】:訪問曆史記錄中的URL /186
 7.6  screen對象 /187
 【課堂案例7-12】:獲取用戶屏幕信息 /188
 【課堂案例7-13】:根據用戶屏幕信息切換網頁顯示效果 /189
 7.7  本章練習 /190
 第8章  HTML文檔對象模型(DOM) /192
 8.1  文檔對象模型概述 /192
 8.2  DOM核心接口 /196
 【課堂案例8-1】:獲取DOM樹中的節點信息 /200
 【課堂案例8-2】:刪除DOM樹中的節點 /202
 【課堂案例8-3】:在DOM樹中添加子節點 /203
 【課堂案例8-4】:替換DOM樹中的節點 /205
 【課堂案例8-5】:復製DOM樹中的節點 /206
 【課堂案例8-6】:獲取節點的屬性 /207
 【課堂案例8-7】:控製文本節點 /209
 【課堂案例8-8】:提取網頁中的超鏈接地址 /211
 8.3  DOM HTML /212
 【課堂案例8-9】:獲取文檔信息 /215
 【課堂案例8-10】:修改文檔中的鏈接 /216
 【課堂案例8-11】:操作文檔中的錶格 /217
 【課堂案例8-12】:獲取文本框中用戶輸入的內容 /220
 【課堂案例8-13】:獲取單選框用戶選擇的內容 /221
 【課堂案例8-14】:獲取復選框用戶選擇的內容 /222
 【課堂案例8-15】:控製下拉菜單 /223
 【課堂案例8-16】:判斷用戶選取的文件類型 /225
 【課堂案例8-17】:限製用戶使用錶單元素 /226
 【課堂案例8-18】:驗證錶單數據 /227
 【課堂案例8-19】:為所有段落加邊框 /228
 【課堂案例8-20】:選項卡效果 /230
 【課堂案例8-21】:Web相冊 /231
 【課堂案例8-22】:修改網頁背景色 /234
 【課堂案例8-23】:顯示/隱藏頁麵元素 /235
 【課堂案例8-24】:覆蓋顯示圖片 /236
 【課堂案例8-25】:在網頁中繪圖1 /238
 【課堂案例8-26】:在網頁中繪圖2 /239
 8.4  本章練習 /240
 第9章  事件(Event)處理 /245
 9.1  事件處理概述 /245
 9.2  基於HTML屬性的事件處理方法 /245
 【課堂案例9-1】:文檔事件 /246
 【課堂案例9-2】:鼠標事件 /248
 【課堂案例9-3】:獲得/失去焦點事件 /249
 【課堂案例9-4】:鍵盤事件 /250
 【課堂案例9-5】:onchange事件 /250
 【課堂案例9-6】:使用this作參數 /251
 【課堂案例9-7】:為事件設置響應函數 /252
 9.3  DOM EVENT事件處理 /253
 【課堂案例9-8】:注冊事件監聽器,設置背景圖片 /256
 【課堂案例9-9】:注冊多個事件監聽器,實現簡易加法計算器 /257
 【課堂案例9-10】:事件指派 /258
 【課堂案例9-11】:顯示鼠標位置 /259
 【課堂案例9-12】:創建快捷菜單,縮放圖片 /261
 【課堂案例9-13】:創建快捷菜單,縮放圖片 /262
 9.4  本章練習 /265
 第10章  常用的數據交換格式和數據存儲技術 /267
 10.1  XML文檔 /267
 【課堂案例10-1】:同步訪問XML文檔,獲取圖書信息 /269
 【課堂案例10-2】:異步訪問XML文檔,設置段落樣式 /270
 【課堂案例10-3】:XML生成樹狀菜單 /272
 10.2  JSON /274
 【課堂案例10-4】:使用JSON對象 /274
 【課堂案例10-5】:訪問JSON對象中的對象 /276
 【課堂案例10-6】:使用JSON數組 /276
 【課堂案例10-7】:訪問JSON對象數組 /277
 10.3  數據存儲 /278
 【課堂案例10-8】:使用cookie存儲用戶賬戶信息 /278
 【課堂案例10-9】:使用localStorage存儲數據 /280
 【課堂案例10-10】:使用sessionStorage存儲數據 /282
 10.3  本章練習 /284
 第11章  綜閤練習——服飾設計網站 /286
 11.1  網站整體說明 /286
 11.2  程序說明 /287 
我一直覺得要學好一門編程語言,光看理論是遠遠不夠的,最關鍵是要有大量的實踐。而這本《JavaScript程序設計基礎與範例教程》在這方麵做得非常齣色。我最欣賞的是它提供的“範例驅動”的學習方式。每一章的開頭,作者都會拋齣一個問題或者一個想要實現的功能,然後循序漸進地講解實現這個功能所需要的知識點,最後給齣完整的代碼。這種方式讓我有一種“跟著大神一起做項目”的感覺,目標明確,學習動力十足。我記得在學習“異步編程”這塊內容的時候,我之前看過的書都隻是簡單提瞭一下迴調函數,然後就跳到Promise瞭,搞得我一頭霧水。但這本書,它先是詳細講解瞭為什麼需要異步編程,然後用瞭一個非常形象的例子,比如“點餐”的比喻,來解釋迴調函數的運作機製,然後再逐步引入Promise和async/await,整個過程清晰流暢,讓我終於理解瞭那些“看不見的等待”。而且,書中的範例設計得非常巧妙,它們不僅能夠幫助你理解知識點,還能激發你的創造力。比如,有一個範例是做一個簡單的“待辦事項列錶”,學完之後我不僅掌握瞭DOM操作和數組操作,還學會瞭如何管理用戶輸入和數據。這本書就像一個經驗豐富的老師,不僅教你“是什麼”,更教你“怎麼做”,並且告訴你“為什麼這麼做”。
評分我一直認為,好的編程書不僅僅是傳授知識,更重要的是能夠激發讀者的興趣和思考。而《JavaScript程序設計基礎與範例教程》恰恰做到瞭這一點。它沒有采用枯燥的說教方式,而是通過一個個生動有趣的範例,將抽象的概念變得具象化。我記得剛開始接觸“麵嚮對象編程”的時候,我總是覺得很睏惑,那些“類”、“實例”、“繼承”聽起來就像天書。但這本書,它通過一個“動物園”的比喻,將“類”比作創建動物的“模闆”,將“實例”比作動物園裏真實的動物,將“繼承”比作不同動物之間血緣關係。這種形象的比喻讓我一下子就理解瞭麵嚮對象編程的核心思想。而且,書中的範例都是小巧而精悍的,每一個範例都能夠獨立運行,並且能夠清晰地展示所講解的知識點。比如,書中有一個範例是實現一個簡單的“日曆”,讓我學會瞭如何處理日期和時間,如何動態生成HTML元素。這本書讓我覺得,學習JavaScript不是一件被動接受知識的過程,而是一個主動探索和創造的過程。它不僅僅是教我如何寫代碼,更重要的是培養瞭我解決問題的思維方式和編程的樂趣。我覺得這本書非常適閤那些想要真正掌握JavaScript,而不是僅僅停留在錶麵瞭解的讀者。
評分要說這本《JavaScript程序設計基礎與範例教程》最讓我覺得“值”的地方,那絕對是它在“錯誤處理”和“調試技巧”上的講解。之前我寫代碼,遇到bug就隻能抓瞎,要麼就是上網搜,要麼就靠猜,效率非常低。但這本書,它專門用瞭一個章節來講解如何有效地處理JavaScript中的各種錯誤,並且教授瞭一些非常實用的調試技巧。作者列舉瞭許多常見的錯誤類型,比如語法錯誤、運行時錯誤、邏輯錯誤,並且詳細解釋瞭它們的原因和解決方法。我特彆喜歡書中介紹的“console.log”的妙用,之前我隻是把它當成一個簡單的輸齣工具,但這本書告訴我,通過巧妙地利用console.log,可以追蹤變量的變化,分析代碼的執行流程,簡直就是bug的“剋星”!更重要的是,書中還介紹瞭瀏覽器開發者工具的使用,讓我學會瞭如何利用斷點來一步步調試代碼,觀察變量的值,分析函數調用棧。這對於我來說,簡直是打開瞭新世界的大門!以前覺得調試是一件很痛苦的事情,但學瞭這本書之後,我發現調試也可以變得很有趣,而且非常高效。這本書不僅教會瞭我寫齣正確的代碼,更教會瞭我如何去發現和修復錯誤,這對於一個初學者來說,實在是太寶貴瞭!
評分這本《JavaScript程序設計基礎與範例教程》簡直是為我量身定做的!我一直對網頁開發很感興趣,但總覺得JavaScript太抽象,那些函數、對象、原型鏈什麼的,聽起來就頭大。市麵上很多書要麼寫得過於理論,要麼就是跳躍性太強,看得我一頭霧水。但這本書真的不一樣,它從最最基礎的“Hello, World!”開始,一步步地講解,每一步都配有清晰易懂的代碼示例,而且這些示例都是可以直接運行,看到效果的!我特彆喜歡書中對“變量”和“數據類型”的講解,作者沒有直接給我一堆名詞解釋,而是通過一個個生動的比喻,比如把變量比作一個可以存放不同物品的盒子,把數據類型比作盒子裏隻能放特定種類物品的限製,這樣我就很容易理解瞭。更贊的是,書中還穿插瞭許多“小練習”,讓我現學現賣,鞏固知識點。不像有些書,講完一大堆理論就讓你自己去琢磨,這本書真的做到瞭“學以緻用”。我記得剛開始學到DOM操作的時候,我以為會很復雜,結果書中通過一個簡單的例子,教我如何改變網頁上一個元素的文本內容,當我親手敲下代碼,看到屏幕上的文字真的變瞭,那種成就感真是難以言喻!總的來說,這本書沒有絲毫的“廢話”,每一頁都充滿瞭實實在在的乾貨,讓我覺得學習JavaScript不再是一件遙不可及的事情,而是變得有趣且可行。
評分說實話,我當初買這本書的時候,其實並沒有抱太大的希望,因為我之前嘗試過幾本JavaScript的書,最後都半途而廢瞭。但這本書真的給瞭我一個大大的驚喜!它最大的特點就是“循序漸進”,完全照顧到瞭我這種零基礎的讀者。從最基本的語法,比如運算符、條件語句、循環語句,到稍微復雜一點的概念,比如函數、數組、對象,作者都講得非常細緻,而且每講完一個知識點,都會立刻跟上相關的範例,讓你能夠立刻動手實踐。我特彆喜歡書中對“作用域”的講解,之前看彆的書總是說“全局作用域”和“局部作用域”,聽得雲裏霧裏,但這本書用瞭一個非常巧妙的“房子”的比喻,把不同作用域的範圍生動地展示齣來,讓我一下子就明白瞭。而且,這本書的範例都是貼近實際應用的,不是那種脫離實際的“玩具代碼”。比如,書中有一個章節講如何用JavaScript實現一個簡單的計數器,還有一個章節講如何做一個圖片輪播效果,這些都是我平時在網站上經常能看到的,學完之後我感覺自己真的可以做齣一些小東西瞭!讓我印象深刻的是,書中對“事件處理”的講解,作者非常細緻地剖析瞭事件冒泡和事件捕獲的過程,還提供瞭很多處理不同用戶交互的範例,比如點擊按鈕彈齣提示框,鼠標懸停改變元素樣式等等。這本書真的讓我從“看懂”變成瞭“會做”,感覺自己的編程能力在飛速提升。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有