jsrosetta

Hàm

Hoán đổi biến

Hoán đổi hai biến bằng array destructuring trong Node.js so với destructuring assignment trong Rust, hàm `swap` trong Swift, gán nhiều biến trong Go và biến tạm trong Java.

Phiên bản tối thiểu
Node.js ≥ 12.20Go ≥ 1.0Rust ≥ 1.59Swift ≥ 2.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.

Node.js hoán đổi hai biến bằng array destructuring, không cần biến tạm. Go làm y hệt bằng gán nhiều biến cùng lúc — cũng không cần biến tạm. Rust từ bản 1.59 có destructuring assignment cho tuple ((b, a) = (a, b)), cùng ý tưởng. Swift có sẵn hàm swap(&a, &b) trong thư viện chuẩn. Java không có cú pháp nào cho việc này — vẫn phải dùng biến tạm.

Hoán đổi hai biến

let a = 'foo';
let b = 'bar';
 
console.log(a, b); // foo bar
 
[b, a] = [a, b];
 
console.log(a, b); // bar foo

Tham khảo: github.com/miguelmota/golang-for-nodejs-developers#swapping