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
        Installing & Exploring
      • Loading Modules
      • npm - Get Command Input
      • Web Server
        • Express Web Server
      • Template Engine & MVC
      • File System & Input Arguments
      • 6. Deploy to Heroku & Github
      • Authentication
      • 7. Databases
      • 8. Rest API
      • Errors
    • 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

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
Node.js là JS chạy trên server (thay vì client / browser):
Run Server: create, listen to incoming request...
Run Business Logic: handle request, routing, validate input, connect database...
Return Response: rendered HTML, JSON, trigger webhook...
Run on Local Machine: Không chỉ chạy trên Server, bạn có thể dùng Node.js để chạy các Utility Script, Build Tools... trên các máy tính local (nhờ Node có thể truy cập vào File System)
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

Installing

Documentation theo phiên bản để tham khảo:

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.