Skip to content
youhoc
  • Pages
    • Home
    • Modern App Guidelines
    • Linux
      • Day 1: Linux Distributions & Navigation
      • Day 2: User Management
      • Day 3: File Permission & Ownership
      • Day 4: Package Management
      • Day 5: Services Management
    • Javascript
      • JS The Weird Part
        • Execution Context
        • Types & Operators
        • Objects & Functions
        • Error Handling & Strict Mode
        • Typescript, ES6, Tra
      • Modern JS
        • JS in the Browser
        • Data Storage JSON
        • Modern JS
        • Advanced Objects & Methods
        • Webpack & Babel
        • Async
      • jQuery
        • In-depth Analysis of jQuery
      • React-ready JS
        • Arrow Function
        • Template Literals
        • Logical AND, OR, Ternary, Nullish Operators
        • Destructuring & Rest Operator
        • Array Method
        • Immutability and Spread Operator
        • Promises, Async/Await, Callback
    • PHP
      • gruntJS
      • composer
      • MySQL
    • Docker
      • Container Basics
      • Container Networking
      • Container Image
      • Container Volume & Persistent Data
      • Dockerfile
      • Docker Compose
      • Docker Registry
    • Node.js
      • icon picker
        1. Installing & Exploring
      • 2. Core Modules
      • 3. Get User Input
      • File System & Input Arguments
      • 5. Express Web Server
      • 6. Deploy to Heroku & Github
      • Authentication
      • 7. Databases
      • 8. Rest API
    • ReactJS
      • React from Andrew
        • Summary from Next
        • 1. Basics
        • 2. React Components
        • 3. Webpack
        • 4. Styling with SCSS
        • 5. React Router
        • 6. React Hook
      • Modern React From The Beginning
        • Intro to JSX
        • Vite Build Tools
        • Basic Component Creation
        • Component State
        • Props & Component Composition
        • useState with Inputs & Form Submission
        • useEffect, useRef & Local Storage
        • Async / Await and Http Request in React
        • React Router: Declarative Mode
        • ContextAPI
        • React Router: Framework Mode
          • File-routing & HTML Layouts
          • Server-side Data Query
          • Links & Navigation
          • Loaders
    • Typescript
      • Type User vs UserProp
    • Payload CMS

1. Installing & Exploring

Tuy nhiên khác ở chỗ là không có object "window" hay "document" (trong node) và không có biến "global" (trong browser)
Node: global, process
Chạy process.exit(); để thoát khỏi node
Browser: window, document

Node.js là gì?
- Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine
- V8 Javascript engine là open-source của Google
- JS chạy trên server (thay vì client / browser)
- JS để tạo webserver, xử lý filesystem… trên nền JS
- Why Node.js?
- Back-end Technology được sử dụng bởi nhiều công ty lớn
- Event-driven, non-blocking I/O model
- Nghĩa là nếu có 1 task (query DB chẳng hạn) đang chờ response, thì các task khác vẫn chạy, chứ không chờ nhau, không bị kẹt (blocked) —> và browser không bị đứng khi bị kẹt. Xem mô tả bên dưới.
- npm là hệ sinh thái package của Node.js —> tìm thư viện libraries trên npmjs.com

const getUserSync a require . arcsetuserSyrc).png
Documentation theo phiên bản để tham khảo:
v15 https://nodejs.org/dist/latest-v15.x/docs/api/

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.