草莓今天看起來一臉沒睡飽的樣子。
「草莓呀,怎麼很晚睡嗎?」熊熊問。
「對啊,最近都失眠,昨天晚上一直在想變數的東東。」草莓有氣無力地說。
「變數怎麼了嗎?」熊熊歪頭問。
「就我昨天在數羊睡覺,數到第九千五百二十七隻的時候突然想到一件事。」草莓有氣無力地說。
「... 也太多隻了吧」
「我就想到,我可以把一個值丟給變數沒錯,可是如果今天出現好多個值的話,就像是突然出現好多隻羊的話,變數有辦法處理嗎?」
「嗯嗯不錯不錯~就連睡覺的時候還在思考,難怪會睡不著」熊熊心想。
「這裡就要學習一個新的概念囉!叫做陣列 (Array)!」熊熊說。
「喔?」
「首先我們先看到昨天的變數範例。」
var myNumber = 4;
「只要把昨天的變數範例稍微修改一下。」
var myNumberList = [1, 2, 3, 4];
「好像多了中括號耶!」草莓說。
「沒錯~透過陣列這樣的寫法,我們就可以一次塞入很多筆資料給變數囉!」
「所以我也可以這樣寫囉!」草莓拿起筆在白板上快速畫著。
var myList = ['一隻羊', '兩隻羊', '三隻羊', '四隻羊'];
「答對了!不管是數字還是字串都可以使用一樣的方式做到喔!」
「熊熊我又有問題了~」草莓舉起手發問,「如果我只想要拿到陣列中的最後一個元素,那我應該怎麼寫呢?」
「可以喔!我們可以用中括號帶數字的方式去取得指定的元素,像是這樣的語法。」
陣列[索引] => 得到陣列中該元素的值
「喔喔~可是為什麼我這樣寫會拿不到資料呀?」草莓指著自己的程式碼說。
「讓我看看~」熊熊說。
var myList = ['一隻羊', '兩隻羊', '三隻羊', '四隻羊'];
myList[4];
「這裡用陣列的時候要特別留意一件事情喔!就是陣列的索引值是從 0 開始的,所以這裡寫 4 的話是抓不到東西的
「原來是這樣~那可以把元素印在畫面上嗎?」草莓接著問。
「當然可以,我們可以使用這個指令。」
var myList = ['一隻羊', '兩隻羊', '三隻羊', '四隻羊'];
console.log(myList[3]);
「之前我們在檢測元素的時候曾經學過怎麼打開開發者工具對吧?打開之後看到 console 這裡,會發現你的元素就印在畫面上囉!」
「真的耶!」草莓驚喜地說。
「可是,如果新增的陣列越來越長,要拿最後一個元素的話不就要一直更改裡頭的數字嗎?」好奇的她又想到了新的問題。
「這個問題問得很好喔!這時候就需要使用陣列提供的方法了。」
var myList = ['一隻羊', '兩隻羊', '三隻羊', '四隻羊'];
console.log(myList[myList.length - 1]);
「是指 length 這個東西嗎?」草莓問。
「沒錯~length 可以讓我們知道目前 Array 的總長度是多少,又因為索引值是從零開始,所以要記得再多做減一的動作喔!」
「陣列是個好東西呢!感覺好多問題都迎刃而解了,再也不怕晚上睡不著覺了嘻嘻~」草莓開心地說。
「熊熊晚安~」
「...」
明日待續~