線上課程觀課進度管理小工具開發日誌
Day 6:JavaScript 程式碼執行排序:遞迴函數、Call Stack、Task Queue
Call Stack;遞迴函數與 call stack 的關係;Task Queue(非同步的概念再釐清)
Day 9:「修煉圈圈 Practice Rings」Web app 開發日誌 - 2025 六角 AI Vibe Coding 體驗營期末大魔王作業
這份筆記旨在記錄 2025 六角 Vibe Coding 體驗營每日作業 Day 21 的期末專案成果,從一個簡單的個人痛點出發,透過與 AI(在我這個情境中是 Perplexity)協作,在一天內完成了一個包含前後端的全端網頁小工具:「修煉圈圈 Practice Rings」。
線上課程觀課進度管理小工具開發日誌
Day 6:JavaScript 程式碼執行排序:遞迴函數、Call Stack、Task Queue
Call Stack;遞迴函數與 call stack 的關係;Task Queue(非同步的概念再釐清)
Day 9:「修煉圈圈 Practice Rings」Web app 開發日誌 - 2025 六角 AI Vibe Coding 體驗營期末大魔王作業
這份筆記旨在記錄 2025 六角 Vibe Coding 體驗營每日作業 Day 21 的期末專案成果,從一個簡單的個人痛點出發,透過與 AI(在我這個情境中是 Perplexity)協作,在一天內完成了一個包含前後端的全端網頁小工具:「修煉圈圈 Practice Rings」。
<100 subscribers
<100 subscribers
split:根據指定的分隔符把字串切割成由子字串組成的陣列
trim:去掉字串起始與結尾處的空白字元(包括空格、tab、換行等)
可用在把字串/陣列元素逐一拆開使用
用在字串效果接近 split("")(空字串分隔),但對中文和 emoji 處理更安全,因為編碼判斷邏輯稍有不同
split(''):按 UTF-16 code unit 切,會把 emoji / 罕用漢字拆成兩個壞掉的字元
[...s]:按 Unicode code point 切,能正確處理 emoji 和所有 Unicode 字元
const s = 'A😂B';
s.split(''); // ["A", "\uD83D", "\uDE02", "B"] emoji 被拆壞
[...s]; // ["A", "😂", "B"] 正確處理
用在陣列可以把陣列元素逐一當作參數輸入 function 使用
const arr = [1, 2, 3];
const arr2 = [...arr, 4]; // => [1, 2, 3, 4]
Math.max(...arr); // 等同 Math.max(1, 2, 3)
const s = '哈囉';
const chars = [...s]; // => ['哈', '囉']
針對陣列元素有很多個逐一處理元素值的方法,可省去大量 for loop,讓程式碼更好閱讀也更好維護
every:逐一檢查元素值是否符合判斷條件,回傳布林值,全部符合才回傳 true
some:逐一檢查元素值是否符合判斷條件,回傳布林值,只要有元素符合就回傳 true
filter:逐一檢查元素值和索引值是否符合判斷條件,回傳符合條件的元素值組成的陣列
join:把所有元素連接、合併成一個字串
toString:把元素值轉成以逗號分隔的字串
目前理解: 比對陣列等物件的元素值時,要用 toEqual ,使用 toBe 屬於嚴格相等檢查(等同 ===) 會常常報錯,因為不同物件對照的記憶體位置不同。toEqual
toBe:確認純值相等、物件參照位置相同
toEqual:可遞迴比對物件/陣列內容
參考文件來源:
split:根據指定的分隔符把字串切割成由子字串組成的陣列
trim:去掉字串起始與結尾處的空白字元(包括空格、tab、換行等)
可用在把字串/陣列元素逐一拆開使用
用在字串效果接近 split("")(空字串分隔),但對中文和 emoji 處理更安全,因為編碼判斷邏輯稍有不同
split(''):按 UTF-16 code unit 切,會把 emoji / 罕用漢字拆成兩個壞掉的字元
[...s]:按 Unicode code point 切,能正確處理 emoji 和所有 Unicode 字元
const s = 'A😂B';
s.split(''); // ["A", "\uD83D", "\uDE02", "B"] emoji 被拆壞
[...s]; // ["A", "😂", "B"] 正確處理
用在陣列可以把陣列元素逐一當作參數輸入 function 使用
const arr = [1, 2, 3];
const arr2 = [...arr, 4]; // => [1, 2, 3, 4]
Math.max(...arr); // 等同 Math.max(1, 2, 3)
const s = '哈囉';
const chars = [...s]; // => ['哈', '囉']
針對陣列元素有很多個逐一處理元素值的方法,可省去大量 for loop,讓程式碼更好閱讀也更好維護
every:逐一檢查元素值是否符合判斷條件,回傳布林值,全部符合才回傳 true
some:逐一檢查元素值是否符合判斷條件,回傳布林值,只要有元素符合就回傳 true
filter:逐一檢查元素值和索引值是否符合判斷條件,回傳符合條件的元素值組成的陣列
join:把所有元素連接、合併成一個字串
toString:把元素值轉成以逗號分隔的字串
目前理解: 比對陣列等物件的元素值時,要用 toEqual ,使用 toBe 屬於嚴格相等檢查(等同 ===) 會常常報錯,因為不同物件對照的記憶體位置不同。toEqual
toBe:確認純值相等、物件參照位置相同
toEqual:可遞迴比對物件/陣列內容
參考文件來源:
Share Dialog
Share Dialog
No comments yet