卡斯伯提供的教學資源:
鐵人賽:動態型別的 JavaScript
JavaScript 是屬於動態型別,它定義了七種資料型別,分別為六種原始型別 (ES6 新增一種原始型別)及 Object 型別。在開始之前先用小明來說明一下型別是怎樣的東西。 故事說明: 承先前故事,小明每天早上醒來都會忘記所有事物,但會在睡覺前把要做的事情先記錄下來,筆記本上會分門別類寫出要做...
鐵人賽:一次只能做一件事情的 JavaScript
在 JavaScript 中,一次只會執行一段程式碼,相信看到這段大家心中都會有所疑惑,我們實作中可以大量發出許多事件,並重複執行不同的函式,這樣為何還是單執行緒 (single threaded) 的程式語言呢? 這段如果用純文字解釋較為困難,所以本篇會加入動畫讓大家更容易了解原理。 故事說明小明...
鐵人賽:JavaScript 變數的宣告與他的作用域
變數分為全域與區域變數,差異點在於宣告 (var) 的方式,就 MSDN 上的說明 在函式定義之外宣告的變數就是全域變數,其值可在整個程式中存取和修改。 所以我們可以使用函式來做兩個的分隔點,函式之內宣告的稱為區域,函式以外宣告的稱為全域。 全域性的變數在函數外宣告的變數則是具有全域性(或是包含全域...
鐵人賽:執行環境與堆疊
JavaScript 一次只能做一件事情,他會依據 執行環境 (Execution Context) 來一一執行工作內容,本篇系列文會用舉例的方式,讓大家用簡單的方式瞭解這些艱深詞彙。 全域執行環境與函式在一開始會登記一個函式在全域環境下(global context),然後這個全域環境下可以登記其...
鐵人賽:邁向 JavaScript 勇者之路 - 開始
iT邦幫忙的鐵人賽到目前是第四次參加,前幾次參加有兩次是 CSS,而本次是 JavaScript,主要原因當然是 JavaScript 即將要統治世界 (!?),僅只有 CSS 的能力很難體會這個世界的險惡美好。 JavaScript 能做的事情非常多,Web 端的應用僅是其中的一小部分,現在包含後...
JavaScript 陣列處理方法 [filter(), find(), forEach(), map(), every(), some(), reduce()]
陣列處理技巧是 JavaScript 中非常重要的一塊,現在框架大亂鬥的時代,框架基本上對於 DOM 的處理都有屬於自己一套良好的方法。只要能夠對於陣列資料操作熟悉,配合框架就能夠將開發效率更上層樓。 本篇介紹到的方法有: filter() find() forEach() map() every...
Javascript 閉包
一直以來我都不太敢寫純 Javascript的文章,主要原因是底子不夠深,害怕寫了之後錯誤太多,但最近想學看看React.js,如果說一直不敢寫的話,那麼就無法進步。 這篇是要介紹Javascript閉包,參考的是這篇文章,這篇寫得不錯,從頭到尾看到有感受到閉包的用法,但或許有錯誤,也在這邊重頭到尾...
專輯封面顏色作為背景色(平均色)
現在有些音樂專輯選單做得很豐富,其中一種背景色會隨著專輯色改變,我剛好想到以前有做一個CSS專輯選單,如果結合Canvas似乎就能達到差不多的效果,所以就來試試看。...
試試看Canvas (3),Canvas 小畫家
這篇也是前一個Blog的文章,最近在整理就一起拿出來。 翻翻一年之前做的,才發現原來有很多很酷的東西,還好有寫成簡易的文章,讓現在再重新看可以很快瞭解,這篇是介紹用Canvas做小畫家,並且還可以下載下來的功能,有分為好幾段,這邊全部合併成一篇。...
試試看Canvas (2),調整Canvas圖片色調
這篇也是前一個Blog的文章,最近在整理就一起拿出來。 Canvas挺有趣的,在一年前試過,而網路上也有相當多的library,但是在使用lib前還是先簡單了解一下canvas的運作吧。 參考:https://developer.mozilla.org/en-US/docs/Web/Guide/HT...