I/O
Biến môi trường
process.env của Node.js so với os.Getenv (Go), env::var (Rust), ProcessInfo.environment (Swift) và System.getenv (Java).
- Phiên bản tối thiểu
- Node.js ≥ 12.20Go ≥ 1.0Rust ≥ 1.58Swift ≥ 3.0Java ≥ 25
- Đã chạy thử trên
- Node.js 24.12.0Go 1.27.1Rust 1.98.1Swift 6.2.4Java 25.0.4.1
Code Node.js là ES module: lưu file .mjs hoặc đặt "type": "module" trong package.json.
Đọc biến môi trường là một trong những thao tác I/O đơn giản nhất, nhưng cách truy cập khác nhau đôi chút: Node.js coi process.env như một object; Go, Rust và Java đều dùng một hàm nhận vào tên biến, còn Swift lại index vào dictionary environment bằng subscript. Go trả về chuỗi rỗng nếu biến không tồn tại, Rust trả về Result (dùng unwrap_or_default() để lấy chuỗi rỗng tương tự), còn Swift và Java trả về nil/null.
Đọc biến môi trường
const key = process.env['API_KEY']
console.log(key)package main
import (
"fmt"
"os"
)
func main() {
key := os.Getenv("API_KEY")
fmt.Println(key)
}use std::env;
fn main() {
let key = env::var("API_KEY").unwrap_or_default(); // Err nếu biến không tồn tại hoặc không phải UTF-8 hợp lệ
println!("{key}");
}import Foundation
let key = ProcessInfo.processInfo.environment["API_KEY"] ?? ""
print(key)void main() {
String key = System.getenv("API_KEY"); // null nếu biến không tồn tại
IO.println(key);
}$ API_KEY=foobar node env_vars.js
foobar
$ API_KEY=foobar go run env_vars.go
foobar
$ API_KEY=foobar cargo run
foobar
$ API_KEY=foobar swift env_vars.swift
foobar
$ API_KEY=foobar java Main.java
foobarTham khảo: github.com/miguelmota/golang-for-nodejs-developers#env-vars