iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Modern Web

Web Bluetooth API 實戰:30 天打造通用 BLE 偵錯工具 系列

系列旨在打造一個「給開發者的工具」——通用的 Web BLE 掃描與偵錯瀏覽器。我們將從網頁開發的零基礎出發,深入 JavaScript 核心,精通非同步程式設計,最終駕馭 Web Bluetooth API,同時透過使用API,駕馭API,來深刻理解其底層的 GATT 結構。

參賽天數 24 天 | 共 24 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11:網頁的骨架 (DOM):選取核心 UI 區塊

現在,我們的應用程式看起來像一個準備就緒的機器人,有大腦有身體,但大腦和身體之間的「神經系統」還沒有接上。大腦(JS)還不知道如何指揮身體(HTML)的各個部位...

2025-09-25 ‧ 由 jklu7limj 分享
DAY 12

Day 12:專案核心 (1):createElement 動態生成 UI

在過去幾天,我們完成了所有基礎建設:我們有了能思考的「大腦」(JS)、能展示的「身體」(HTML/CSS),以及連接兩者的「神經系統」(DOM)。我們甚至學會了...

2025-09-26 ‧ 由 jklu7limj 分享
DAY 13

Day 13:專案核心 (2):根據特徵屬性,打造動態互動面板

昨天,我們打造了一個「UI 工廠」函式 renderCharacteristic。它就像一位智慧工匠,能夠根據藍牙特徵的「屬性藍圖」(properties),精...

2025-09-27 ‧ 由 jklu7limj 分享
DAY 14

Day 14:非同步的挑戰:理解探索未知裝置的複雜性

今天,我們要暫時停下手中修改 UI 的工作,來挑戰一個在 JavaScript 世界中,既是「最強大的盟友」,也是「最難纏的敵人」的概念。 回顧一下我們的進度:...

2025-09-28 ‧ 由 jklu7limj 分享
DAY 15

Day 15:現代非同步解方 (2):Promise Chaining 串連探索步驟

昨天,我們正面迎擊了 JavaScript 中最核心的挑戰——非同步程式設計。透過「點咖啡」的生動比喻,我們理解了 Promise 如同一張「取餐券」,並學會了...

2025-09-29 ‧ 由 jklu7limj 分享
DAY 16

Day 16:語法蜜糖 async:讓非同步程式碼更簡潔

今天我們將放慢腳步,回歸到非同步程式設計的起點,專注於一個看似簡單,卻蘊含深意的關鍵字:async。 在前幾天的內容中,我們為了快速理解整個流程,將 async...

2025-09-30 ‧ 由 jklu7limj 分享
DAY 17

Day 17:終極武器 await:用同步思維,駕馭非同步探索流程

昨天,我們深入探索了 async 關鍵字。我們揭開了它的核心秘密:它是一個「Promise 製造機」,能將任何函式都轉變為一個承諾未來的容器,並為我們創造了一個...

2025-10-01 ‧ 由 jklu7limj 分享
DAY 18

Day 18:Web Bluetooth API 導論:安全限制與瀏覽器支援

今天,我們正式跨入專案的第三階段。過去十八天的所有努力——從學習 JS 語法、設計資料結構、打造動態 UI,到征服非同步程式設計——都是為了這一刻所做的準備。我...

2025-10-02 ‧ 由 jklu7limj 分享
DAY 19

Day 19:萬物皆可連:acceptAllDevices 的力量與責任

昨天,我們學習了 Web Bluetooth API 的三大黃金法則,如同飛行員在起飛前 meticulously 檢查儀表板,確保了萬無一失。我們的 scan...

2025-10-03 ‧ 由 jklu7limj 分享
DAY 20

Day 20:建立連結:連接 GATT 伺服器與日誌記錄

昨天,我們取得了歷史性的突破。透過 navigator.bluetooth.requestDevice(),我們的網頁第一次「看見」了真實世界中的藍牙裝置,並成...

2025-10-04 ‧ 由 jklu7limj 分享