Node.js - REPL Terminal: Sân chơi tương tác của bạn

Xin chào, những người đam mê lập trình! Hôm nay, chúng ta sẽ khám phá một tính năng thú vị của Node.js叫做REPL Terminal. Đừng lo lắng nếu bạn mới bắt đầu học lập trình; tôi sẽ dẫn dắt bạn từng bước trong hành trình này, giống như tôi đã làm cho hàng trăm học viên trong những năm dạy học của mình. Vậy, hãy lấy một tách cà phê (hoặc trà, nếu đó là sở thích của bạn), và cùng nhau bắt đầu!

Node.js - REPL Terminal

REPL là gì?

REPL viết tắt của Read-Eval-Print Loop. Nó giống như việc bạn có một cuộc trò chuyện với máy tính. Bạn gõ vào một điều gì đó (Read), máy tính suy nghĩ về nó (Eval),告诉 bạn kết quả (Print), và sau đó chờ bạn nói điều gì khác (Loop). Đây là một cách tuyệt vời để học và thử nghiệm với Node.js!

Làm thế nào để bắt đầu REPL

Để bắt đầu REPL, bạn chỉ cần mở terminal và gõ:

node

Bạn sẽ thấy một dấu nhắc trông như này:

>

Đây là nơi xảy ra phép thuật! Hãy thử một ví dụ đơn giản:

> console.log("Hello, World!")
Hello, World!
undefined

Trong ví dụ này, chúng ta đã bảo máy tính in ra "Hello, World!". Nó đã làm điều đó, và sau đó trả về undefinedconsole.log không trả về giá trị nào.

Biểu thức nhiều dòng

Bây giờ, hãy làm cho việc này trở nên稍微 phức tạp hơn một chút. REPL cho phép chúng ta viết mã trải qua nhiều dòng. Điều này đặc biệt hữu ích khi định nghĩa hàm hoặc viết logic phức tạp hơn.

Ví dụ: Hàm nhiều dòng

Hãy tạo một hàm chào đón mọi người:

> function greet(name) {
... return `Hello, ${name}! Welcome to Node.js REPL.`;
... }
undefined
> greet("Alice")
'Hello, Alice! Welcome to Node.js REPL.'

Trong ví dụ này, chúng ta đã định nghĩa một hàm nhận vào một tên và trả về một lời chào. Lưu ý cách REPL sử dụng ... để chỉ ra rằng chúng ta vẫn đang gõ hàm của mình. Khi hoàn thành, chúng ta có thể gọi hàm này với greet("Alice").

Biến gạch dưới

REPL có một mẹo nhỏ: biến gạch dưới (_). Biến đặc biệt này lưu trữ kết quả của biểu thức cuối cùng.

Ví dụ: Sử dụng biến gạch dưới

> 5 + 3
8
> _
8
> _ * 2
16

Trong ví dụ này, chúng ta đầu tiên tính 5 + 3, được 8. Sau đó, chúng ta sử dụng _ để tham chiếu đến kết quả này và nhân nó với 2.

Nó giống như có một máy tính mini nhớ lại câu trả lời cuối cùng của bạn!

Lệnh chấm

REPL cũng cung cấp các lệnh đặc biệt bắt đầu bằng dấu chấm (.). Các lệnh này giúp bạn điều hướng và kiểm soát môi trường REPL của mình.

Dưới đây là bảng một số lệnh chấm hữu ích:

Lệnh Mô tả
.help Hiển thị danh sách tất cả các lệnh khả dụng
.break Thoát khỏi biểu thức nhiều dòng
.clear Xóa REPL context
.exit Thoát khỏi REPL
.save Lưu phiên làm việc hiện tại của REPL vào một tệp
.load Tải một tệp vào phiên làm việc REPL hiện tại

Ví dụ: Sử dụng lệnh chấm

Hãy thử một vài lệnh này:

> .help
// Điều này sẽ hiển thị tất cả các lệnh khả dụng

> for(let i = 0; i < 3; i++) {
... console.log(i);
... // Ồ, chúng ta thay đổi ý kiến!
... .break
>

> .save mySession.js
Phiên làm việc đã được lưu vào: mySession.js

> .exit

Trong ví dụ này, chúng ta đầu tiên sử dụng .help để xem tất cả các lệnh khả dụng. Sau đó, chúng ta bắt đầu một vòng lặp for nhưng quyết định thoát khỏi nó bằng .break. Cuối cùng, chúng ta lưu phiên làm việc vào một tệp và thoát khỏi REPL.

Bài tập thực hành: Xây dựng một máy tính đơn giản

Bây giờ, chúng ta đã học về REPL, hãy áp dụng kiến thức của mình bằng cách xây dựng một máy tính đơn giản. Chúng ta sẽ định nghĩa các hàm cho các phép toán cơ bản và sử dụng chúng trong REPL.

> function add(a, b) { return a + b; }
undefined
> function subtract(a, b) { return a - b; }
undefined
> function multiply(a, b) { return a * b; }
undefined
> function divide(a, b) { return b !== 0 ? a / b : "Cannot divide by zero"; }
undefined

> add(5, 3)
8
> subtract(10, 4)
6
> multiply(3, 7)
21
> divide(15, 3)
5
> divide(10, 0)
'Cannot divide by zero'

Trong bài tập này, chúng ta đã định nghĩa bốn hàm cho phép toán cộng, trừ, nhân và chia. Chúng ta sau đó sử dụng các hàm này để thực hiện các phép toán. Lưu ý cách chúng ta thêm một kiểm tra trong hàm divide để ngăn không cho phép chia cho không.

Kết luận

Chúc mừng! Bạn vừa mới bước vào thế giới của Node.js REPL. Chúng ta đã bao gồm các alap của việc tương tác với REPL, viết biểu thức nhiều dòng, sử dụng biến gạch dưới, và sử dụng lệnh chấm. Chúng ta thậm chí đã xây dựng một máy tính đơn giản!

Nhớ rằng, REPL là sân chơi của bạn. Đừng sợ thử nghiệm, mắc lỗi và học từ những lỗi đó. Đó là cách tất cả các lập trình viên vĩ đại bắt đầu hành trình của họ.

Như tôi luôn nói với học sinh của mình, lập trình giống như học một ngôn ngữ mới. Càng gyak luyện, bạn càng trở nên thành thạo. Vậy, tiếp tục khám phá, tiếp tục lập trình, và quan trọng nhất, hãy vui vẻ!

Trong bài học tiếp theo, chúng ta sẽ đi sâu hơn vào Node.js và bắt đầu xây dựng các ứng dụng phức tạp hơn. Đến那时候, chúc bạn lập trình vui vẻ!

Credits: Image by storyset