【教学课件】第四章进阶资料型态.ppt
《【教学课件】第四章进阶资料型态.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第四章进阶资料型态.ppt(38页珍藏版)》请在三一办公上搜索。
1、第四章進階資料型態,張智星http:/mirlab.org/jang台大資工系 多媒體檢索實驗室,本章大綱,大綱本章說明 JavaScript 的一些進階資料型態,包含陣列、字典物件、自訂物件等。掌握這一些進階資料型態,你的程式碼就會更簡潔易懂。主題4-1:陣列物件的簡介4-2:陣列物件的方法4-3:字典物件4-4:自訂物件,2/38,4-1:陣列物件的簡介,本章介紹陣列物件及相關函式的使用。,3/38,陣列基本簡介,陣列(Arrays)是 JavaScript 提供的內建物件(Built-in Object)之一,其功能強大,可大幅度簡化你的程式碼。陣列是一個變數,但它可以儲存許多種不同的值
2、(可以是字串、數值,或是各種物件)我們可以使用索引(Index)來存取每一個元素的值,索引從 0 開始,例如陣列 A 的第一個元素為 A0,第五個元素為 A4,依此類推,這是最常用的陣列元素存取方式。(這部分和C語言是一致的。),4/38,範例4-1,主題:示範陣列的基本建構連結:array01.htm程式碼重點說明要使用陣列變數時,需先宣告,但可以不用設定陣列的元素個數。,5/38,指定陣列元素值,另外兩種指定陣列元素的方法可將元素值一次指定完成:myArray=new Array(This is a test,3.1415926,The last element);也可以使用更簡單的方法:
3、myArray=This is a test,3.1415926,The last element;,6/38,範例4-2,主題:定義js檔案,並印出陣列的所有內容。連結:listArray.js程式碼說明其中 array 代表傳入函數的陣列,arrayName 則是此陣列的名稱,而 array.length 則是陣列 array 的元素個數。,7/38,範例4-3,主題:利用listArray.js印出陣列元素連結:array02.htm程式碼重點說明利用重點程式碼第一行,引入js檔中的程式碼,這種方式,可以讓我們在不同的網頁導入相同的函式,請見後續章節有關於自訂函數的說明。,8/38,範例
4、4-4,主題:用亂數點選字串陣列的元素。連結:randomText.htm程式碼重點說明Math.random()會傳回一個介於 0 和 1 之間的亂數。因此 Math.random()*text.length 會產生一個介於 0 和 text.length 之間的亂數(帶有小數)。最後,Math.floor(Math.random()*text.length)會產生一個介於 0 和 text.length-1 之間的整數(包含頭尾),所以可以用來選取 text 陣列中的一個元素。,9/38,範例4-5,主題:利用亂數點選背景 MIDI 音樂連結:randomMusic.htm說明在上述範例中
5、,我們使用了三個陣列,分別用來儲存 midi 網址、歌曲名稱、歌手姓名。更好的作法,是用一個陣列來存放這些資料,其中每一個元素代表一首歌曲的資料,包含三個欄位(midi 網址、歌曲名稱、歌手姓名),這樣的資料結構比較模組化。,10/38,範例4-6,主題:利用亂數點選影像及背景 MIDI 音樂連結:randomImage.htm說明利用和範例4-4的方式,我們可以隨機產生一張照片,同時也播放隨機背景音樂。,11/38,範例4-7,主題:利用亂數合成訊息,並自動更新連結:punchme.htm程式碼重點說明重點程式碼會讓瀏覽器每 3 秒就重新載入網頁。範例中用了 onMouseDown 和 on
6、MouseUp 的事件,以便即時更換影像,達到趣味性的效果。,12/38,範例4-8,主題:有快取效果(Cache)的 JavaScript 網頁連結:rotateImage.htm說明一旦知道影像物件的網址,JavaScript 會先將影像資料抓回來,等要要呈現影像時,就可以直接從客戶端電腦的記憶體中抓取,省卻了直接從網路抓取的時間,減少了使用者的等待時間,達到快取(Cache)的效果。如果 imageArray 只是用來存放影像的網址,而不是存放一個影像物件,那就不會有快取的效果。,13/38,4-2:陣列物件的方法,本小節介紹陣列物件方法的相關使用,14/38,陣列物件方法,15/38,
7、範例4-10,主題:使用陣列方法:sort()和 reverse()連結:arraySort01.htm程式碼重點說明sort()會先將數值轉成字串,再進行字串的排序。若要進行數值的排序,就必須定義一個比較函數,並將此比較函數送進 sort(),請見下個範例。,16/38,範例4-11,主題:定義 sort()的比較函數連結:arraySort02.htm程式碼重點說明a和b會被轉換為數值型態,sort()方法依照比較函數的回傳值來排序。當我們使用加號將陣列和字串並排時,JavaScript 會將陣列轉換成由逗號隔開的字串。如果陣列的每一個元素都是數值,JavaScript 在執行 sort(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第四 进阶 资料
链接地址:https://www.31ppt.com/p-5665326.html