Vivasoft-logo

1.1 āϕ⧋āĻ°ā§āϏ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž

āφāĻŽāϰāĻž āĻāĻ•āϟāĻŋ āĻŦ⧇āϏāĻŋāĻ• āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰ⧇āĻ›āĻŋ āϝāĻž āφāĻĒāύāĻžāϕ⧇ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻāϰ āĻŽā§ŒāϞāĻŋāĻ• āĻŦāĻŋāώāϝāĻŧāϗ⧁āϞāĻŋ āϜāĻžāύāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāĻŦ⧇āĨ¤ āĻāĻ•āĻŦāĻžāϰ āφāĻĒāύāĻŋ āĻāϟāĻŋ āĻļ⧇āώ āĻ•āϰ⧇ āĻĢ⧇āϞāϞ⧇, āφāĻĒāύāĻŋ āĻāĻ•āϜāύ āĻĻāĻ•ā§āώ āĻĢā§āϰāĻ¨ā§āϟ-āĻāĻ¨ā§āĻĄ āĻĄā§‡āϭ⧇āϞāĻĒāĻžāϰ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĻāĻŋāϕ⧇ āĻĒā§āϰāĻĨāĻŽ āĻĒāĻĻāĻ•ā§āώ⧇āĻĒ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰāĻŦ⧇āύāĨ¤ āφāĻĒāύāĻŋ āĻ•āĻŋ āφāĻŽāĻžāĻĻ⧇āϰ āϏāĻžāĻĨ⧇ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻļāĻŋāĻ–āϤ⧇ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ? āϤāĻžāĻšāϞ⧇ āϚāϞ⧁āύ āĻļ⧁āϰ⧁ āĻ•āϰāĻž āϝāĻžāĻ•āĨ¤

1. Course Introduction
          1.1.  āϕ⧋āĻ°ā§āϏ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāĻ•āĻž
          1.2.  Environment āϏ⧇āϟāφāĻĒ

2. JavaScript Fundamentals
          2.1. āĻ•āĻŽā§āĻĒāĻžāχāϞāĻžāϰ āĻāĻŦāĻ‚ āχāĻ¨ā§āϟāĻžāϰāĻĒā§āϰ⧇āϟāĻžāϰ
          2.2.  āϜāĻžāĻ¸ā§āϟ āχāύ āϟāĻžāχāĻŽ (JIT) āĻ•āĻŽā§āĻĒāĻžāχāϞāĻžāϰ
          2.3. āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āχāĻžā§āϜāĻŋāύ
          2.4.  āĻ•āĻŽā§āĻĒāĻžāχāϞāĻŋāĻ‚ āĻŦāύāĻžāĻŽ āĻĒāϞāĻŋāĻĢāĻŋāϞāĻŋāĻ‚
          2.5.  āĻāĻ•ā§āϏāĻŋāĻ•āĻŋāωāĻļāύ āĻ•āύāĻŸā§‡āĻ•ā§āϏāϟ
          2.6.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻ¸ā§āϕ⧋āĻĒ
          2.7.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻšāχāĻ¸ā§āϟāĻŋāĻ‚
          2.8.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻ•ā§āϞ⧋āϜāĻžāϰ
          2.9.  āĻ•āϞ āĻŦā§āϝāĻžāĻ• āĻāĻŦāĻ‚ āĻšāĻžā§ŸāĻžāϰ āĻ…āĻ°ā§āĻĄāĻžāϰ āĻĢāĻžāĻ‚āĻļāύ āĻ•āĻŋ ?
          2.10.  āĻĻāĻŋāϏ (this) āĻ•āĻŋāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ
          2.11.  āĻ•āϞ āĻŦāĻžāχ āĻ­ā§āϝāĻžāϞ⧁ āĻāĻŦāĻ‚ āĻ•āϞ āĻŦāĻžāχ āϰ⧇āĻĢāĻžāϰ⧇āĻ¨ā§āϏ
          2.12.  IIFE
          2.13.  āĻĒāĻŋāĻ“āϰ āĻĢāĻžāĻ‚āĻļāύ (Pure Function)
          2.14.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ Use Strict
          2.15.  Call, Bind āĻāĻŦāĻ‚ Apply
          2.16. āĻ…ā§āϝāĻžāϰ⧇ āĻāĻŦāĻ‚ āĻ…ā§āϝāĻžāϰ⧇ āĻŽā§‡āĻĨāĻĄāϏ

3. Introduction to DOM
          3.1.  āωāχāĻ¨ā§āĻĄā§‹ āĻāĻŦāĻ‚ āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āϟ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ
          3.2.  āĻŦ⧇āϏāĻŋāĻ• āĻāĻŦāĻ‚ Query āϏāĻŋāϞ⧇āĻ•ā§āϟāĻ°ā§āϏ
          3.3.  getElement āĻāĻŦāĻ‚ Query āϏāĻŋāϞ⧇āĻ•ā§āϟāĻ°ā§āϏ āĻāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ
          3.4.  āĻ•āĻŋāĻ­āĻžāĻŦ⧇ DOM elements āĻŸā§āϰāĻžāϭ⧇āĻ°ā§āϏ āĻāĻŦāĻ‚ āϤ⧈āϰ⧀ āĻ•āϰāĻŦ⧇āύ?
          3.5.  How to insert the created elements?
          3.6.  āφāĻĒāĻĄā§‡āϟ āĻāĻŦāĻ‚ āϰāĻŋāĻŽā§āĻ­ DOM element
          3.7.  How to clone a node including its child elements?
          3.8.  Event capturing āĻāĻŦāĻ‚ bubbling āĻāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ
          3.9.  Events Delegation āĻāĻŦāĻ‚Â  Propagation āĻāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ
          3.10. āχāύāĻĒ⧁āϟ āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āϟ āĻāĻŦāĻ‚ āχāϭ⧇āĻ¨ā§āϟ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚
          3.11. āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞ āĻāĻŦāĻ‚ āĻ­ā§āϝāĻžāϞāĻŋāĻĄā§‡āϟ āĻĢāĻ°ā§āĻŽÂ  āĻĄāĻžāϟāĻž

4. Client Storage
          4.1. āϕ⧁āĻ•āĻŋāϜ
          4.2. āϞ⧋āĻ•āĻžāϞ āĻ¸ā§āĻŸā§‹āϰ⧇āϜ
          4.3. āϏ⧇āĻļāύ āĻ¸ā§āĻŸā§‹āϰ⧇āϜ

5. Asynchronous in JavaScript
          5.1. āĻ…ā§āϝāĻžāϏāĻŋāĻ™ā§āĻ•ā§āϰ⧋āύāĻžāϏ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āĻŋ ?
          5.2. āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻ…ā§āϝāĻžāϏāĻŋāĻ™ā§āĻ•ā§āϰ⧋āύāĻžāϏ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§ā§°āĻŋāĻĒā§āϟ āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞ āĻ•āϰāĻŦ⧇āύ?
          5.3. AJAX
          5.4. Event loop (āχāϭ⧇āĻ¨ā§āϟ āϞ⧁āĻĒ) āĻ•āĻŋ?

6. Error handling in JavaScript
          6.1.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻāϰāϰ āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞ
          6.2.  āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύ āĻĻāĻŋā§Ÿā§‡ āĻāϰāϰ āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞāĻŋāĻ‚
          6.3.  Try-Catch-Finally āĻĻāĻŋā§Ÿā§‡ āĻāϰāϰ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚
          6.4.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻāϰāϰ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻĨā§āϰ⧋āĻ“ āĻ•āϰāĻŦ?

7. āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ OOP āĻĒāϰāĻŋāϚāĻŋāϤāĻŋ
          7.1.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ āĻ“āϰāĻŋā§Ÿā§‡āĻ¨ā§āĻŸā§‡āĻĄ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻ•āĻŋ?
          7.2.  āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋ āĻāĻŦāĻ‚ āĻŽā§‡āĻĨāĻĄ
          7.3.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻ•ā§āϞāĻžāϏ āĻ•āĻŋ?
          7.4.  Factory Pattern āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•ā§āϞāĻžāϏ āϤ⧈āϰāĻŋ āĻ•āϰāĻž
          7.5.  Constructor Pattern āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻ•ā§āϞāĻžāϏ āϤ⧈āϰāĻŋ
          7.6.  new āϕ⧀āĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻŋ? āĻāϟāĻž āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇?
          7.7.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ Abstraction
          7.8.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻĒā§āϰ⧋āĻĒāĻžāĻ°ā§āϟāĻŋ āĻšāĻžāχāĻĄ āĻ•āϰāĻž
          7.9.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻĒāϞāĻŋāĻŽāϰāĻĢāĻŋāϜāĻŽ
          7.10.  āϕ⧀āĻ­āĻžāĻŦ⧇ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ Getter āĻāĻŦāĻ‚ Setter āχāωāϜ āĻ•āϰāϤ⧇ āĻšā§Ÿ?
          7.11.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻĒā§āϰ⧋āĻŸā§‹āϟāĻžāχāĻĒ āĻāĻŦāĻ‚ āĻĒā§āϰāĻŸā§‹āϟāĻĒāĻŋāĻ•ā§āϝāĻžāϞ āχāύāĻšā§‡āϰāĻŋāĻŸā§āϝāĻžāĻ¨ā§āϏ
          7.12.  āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻŽāĻžāĻ˛ā§āϟāĻŋ āϞ⧇āϭ⧇āϞ āχāύāĻšā§‡āϰāĻŋāĻŸā§āϝāĻžāĻ¨ā§āϏ

8. Introduce ES6 to ES10
          8.1.  ES6 āĻāĻŦāĻ‚ āϟ⧁āϞāĻŋāĻ‚ āĻ•āĻŋ ?
          8.2.  Let, Const, Literals āĻāĻŦāĻ‚ Destructuring
          8.3.  Spread Operator, rest āĻāĻŦāĻ‚ Default Parameter
          8.4.  āĻ…ā§āϝāĻžāϰ⧋ āĻĢāĻžāĻ‚āĻļāύ
          8.5.  find, fill
          8.6.  for of āĻāĻŦāĻ‚ for in
          8.7.  Class (āĻ•ā§āϞāĻžāϏ)
          8.8.  Symbols (āϏāĻŋāĻŽā§āĻŦāϞāϏ)
          8.9.  Iterators and Generators (āχāϟāĻžāϰ⧇āϟāϰ āĻāĻŦāĻ‚ āĻœā§‡āύ⧇āϰ⧇āϟāϰ)
          8.10.  Promises āĻāĻŦāĻ‚ async/await
          8.11.  Maps (āĻŽā§āϝāĻžāĻĒ) āĻāĻŦāĻ‚ Sets (āϏ⧇āϟ)
          8.12.  Proxies āĻāĻŦāĻ‚ Reflection
          8.13.  Number (āύāĻžāĻŽā§āĻŦāĻžāϰ) āĻāĻŦāĻ‚ Math (āĻŽā§āϝāĻžāĻĨ)
          8.14.  Array āĻāĻŦāĻ‚Â  Object (āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ)
          8.15.  Modules (āĻŽāĻĄāĻŋāωāϞ) āĻāĻŦāĻ‚ String Padding
          8.16.  Exponential Operator āĻāĻŦāĻ‚ Trailing Comma
          8.17.  Object.keys(), Object.values() and Object.entries()
          8.18.  Array.prototype.includes()
          8.19.  Array.flat() and Array.flatMap()
          8.20.  Global This
          8.21.  Optional chaining and Nullish Coalescing Operator