iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Modern Web

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

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

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

DAY1:鐵人賽生存指南:我的「通用 BLE 瀏覽器」專案藍圖

前言 身為一個拖延症晚期aka死線超人的我而言,本次的鐵人賽毫不意外的拖到最後一天才開賽,本來預想中的先利用開賽前的時間屯好存稿,開賽後可以穩穩地進行下去的計畫...

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

DAY2:揭開藍芽的神秘面紗:GATT 協議與我們的第一個虛擬裝置(一)

引言 想像一下,清晨,你戴上智慧手環出門慢跑,手環上的心率感測器忠實地記錄著每一次心跳,並即時同步到手機 App 中,繪製出漂亮的運動曲線。跑累了,你輕點手環,...

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

DAY3:揭開藍芽的神秘面紗:GATT 協議與我們的第一個虛擬裝置(二)

昨天我們已經簡單的認識了 GATT 的基本內容,然而在後續的內容中,我們需要一個實體的 BLE裝置讓我們能夠進行操作和控制,但是市面上的 BLE裝置千百種,加上...

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

DAY4:JavaScript 啟航:變數、資料型態與語言核心

想像一下,我們要蓋一棟房子(我們的 BLE 偵錯工具),今天就是來學習如何製造最基本的「磚塊」。這些磚塊就是程式中的資料。我們將學習如何「製造磚塊」(賦予資料型...

2025-09-18 ‧ 由 jklu7limj 分享
DAY 5

DAY5:程式的邏輯:運算子、流程控制和迴圈

大家好!在內容中,我們已經成功為我們的程式準備了原材料——學會了如何使用變數來儲存資料,並了解了資料型態這個收納盒的規格。我們現在擁有了程式世界的「名詞」,像是...

2025-09-19 ‧ 由 jklu7limj 分享
DAY 6

DAY6 :程式碼的模組化:函式、作用域與閉包

昨天,我們成功地為程式注入了「判斷力」(if...else) 與「耐力」(for...of 迴圈),讓它能夠根據不同情況執行任務,並不知疲倦地處理重複性工作。我...

2025-09-20 ‧ 由 jklu7limj 分享
DAY 7

Day7:萬物皆物件:設計儲存 GATT Profile 的資料結構

昨天,我們學會了如何像建築師一樣,使用函式、作用域和閉包來建構程式碼的「功能模組」。我們現在擁有的,是有組織、有紀律的工具箱。 然而,光有工具還不夠。在建造一棟...

2025-09-21 ‧ 由 jklu7limj 分享
DAY 8

DAY8:資料的集合:陣列與常用方法實戰

昨天,我們精心設計了專案的「建築藍圖」——gattProfile 物件。我們學會了如何使用物件 {} 這種「字典」式的結構,來有條理地存放藍牙裝置的各種資訊,每...

2025-09-22 ‧ 由 jklu7limj 分享
DAY 9

DAY9:網頁的基石 (HTML):搭建 BLE 瑞士刀的介面

經過前面幾天扎實的內功修煉,我們已經徹底掌握了 JavaScript 的核心精髓:從變數、邏輯控制,到函式、物件與陣列。可以說,我們已經為專案打造了一個強大的「...

2025-09-23 ‧ 由 jklu7limj 分享
DAY 10

Day 10:為網頁上妝 (CSS):設計一個清晰的開發者工具介面

昨天,我們用 HTML 親手搭建了 BLE 工具的「骨架」,為我們所有的功能提供了一個堅實的附著點。現在,當你在瀏覽器中打開 index.html,你看到的是一...

2025-09-24 ‧ 由 jklu7limj 分享