程式語言
Python、C、C++、Java、JavaScript、TypeScript、Go、R 與 Haskell 教學,從入門語法到進階技巧。
Lesson 8: Events
By the end of this lesson, you will be able to: Add event listeners to elements Handle different types of events (click, input, submit) Understand event bubbling and delegation Prevent default browser behavior Create int
閱讀文章 →Lesson 9: JSON & LocalStorage
By the end of this lesson, you will be able to: Convert JavaScript objects to JSON strings Parse JSON strings back to JavaScript objects Store data in browser localStorage Retrieve data from localStorage Persist data bet
閱讀文章 →Module 3: Advanced JavaScript
Goal: Learn asynchronous programming and browser APIs.
閱讀文章 →Lesson 1: Asynchronous JavaScript
By the end of this lesson, you will be able to: Understand synchronous vs asynchronous programming Use callbacks to handle asynchronous operations Work with Promises and their methods Use async/await for cleaner asynchro
閱讀文章 →Lesson 10: Mini Project - Weather App
By the end of this lesson, you will be able to: Build a complete weather application Integrate with a real API (OpenWeather) Handle API responses and errors Create a responsive user interface Implement search functionali
閱讀文章 →Lesson 2: Fetch API
By the end of this lesson, you will be able to: Make GET requests to fetch data from APIs Make POST requests to send data to servers Handle different response formats (JSON, text, blob) Manage HTTP status codes and error
閱讀文章 →Lesson 3: APIs & REST Concepts
By the end of this lesson, you will be able to: Understand what APIs are and how they work Learn REST principles and HTTP methods Build query parameters for API requests Understand API endpoints and URL structure Handle
閱讀文章 →Lesson 4: DOM Advanced
By the end of this lesson, you will be able to: Create and remove DOM elements dynamically Build dynamic lists and templates Manipulate element attributes and classes Use document fragments for performance Implement adva
閱讀文章 →Lesson 5: Forms and Validation
By the end of this lesson, you will be able to: Handle form submission events Validate form inputs in real-time Prevent empty field submissions Create custom validation messages Implement form data collection Build user-
閱讀文章 →Lesson 6: Timers and Intervals
By the end of this lesson, you will be able to: Use setTimeout for delayed execution Use setInterval for repeated execution Clear timers with clearTimeout and clearInterval Build countdown timers Create animation loops I
閱讀文章 →Lesson 7: Date and Time
By the end of this lesson, you will be able to: Create and manipulate Date objects Format dates for display Work with timestamps Calculate time differences Handle time zones Create date utilities
閱讀文章 →Lesson 8: Regular Expressions
By the end of this lesson, you will be able to: Understand regex syntax and patterns Use regex for pattern matching Validate input with regex Replace text using regex Extract data from strings Create common regex pattern
閱讀文章 →Lesson 9: Debugging Tools
By the end of this lesson, you will be able to: Use Chrome DevTools effectively Set breakpoints and step through code Inspect variables and call stack Use the network inspector Debug asynchronous code Profile application
閱讀文章 →Module 4: Modern ES6+ Features
Goal: Write clean, modular, and modern code using ES6+ features.
閱讀文章 →Lesson 1: Arrow Functions Deep Dive
By the end of this lesson, you will be able to: Understand arrow function syntax and benefits Know when to use arrow functions vs regular functions Understand lexical this binding in arrow functions Use arrow functions w
閱讀文章 →Lesson 10: Mini Project - GitHub Profile Finder
By the end of this lesson, you will be able to: Build a complete GitHub profile finder application Use GitHub API with modern JavaScript features Implement advanced async/await patterns Apply all ES6+ features learned in
閱讀文章 →Lesson 2: Default Parameters & Optional Chaining
By the end of this lesson, you will be able to: Use default parameters in functions Implement optional chaining for safe property access Use nullish coalescing operator Handle undefined/null values gracefully Write more
閱讀文章 →Lesson 3: Promises & Async/Await Patterns
By the end of this lesson, you will be able to: Use advanced Promise methods (allSettled, any, race) Implement proper async/await error handling Execute promises in parallel vs sequential Create reusable async utilities
閱讀文章 →Lesson 4: Iterators & Generators
By the end of this lesson, you will be able to: Understand iterator protocol and iterable objects Create custom iterators using Symbol.iterator Use generator functions with yield Implement lazy evaluation with generators
閱讀文章 →Lesson 5: Map, Set, WeakMap, WeakSet
By the end of this lesson, you will be able to: Use Map for key-value pairs with any key type Use Set for unique value collections Understand WeakMap and WeakSet for memory management Choose the right collection type for
閱讀文章 →Lesson 6: Symbols and Metadata
By the end of this lesson, you will be able to: Understand what symbols are and why they're useful Create and use symbols as unique identifiers Use well-known symbols (Symbol.iterator, Symbol.toPrimitive) Implement symbo
閱讀文章 →Lesson 7: Modules with Webpack / Vite
By the end of this lesson, you will be able to: Set up Webpack for modern JavaScript development Configure Vite for fast development Bundle modules for production Use modern build tools effectively Optimize bundle size a
閱讀文章 →Lesson 8: Transpiling with Babel
By the end of this lesson, you will be able to: Configure Babel for JavaScript transpilation Use Babel presets and plugins Transpile modern JavaScript to older versions Set up Babel with different environments Understand
閱讀文章 →Lesson 9: Error Handling Patterns
By the end of this lesson, you will be able to: Implement comprehensive error handling strategies Create custom error classes Use error boundaries in applications Handle errors in async operations Build robust error repo
閱讀文章 →