Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Cách chuyển mảng JavaScript thành danh sách phân cách bằng dấu phẩy?

Sử dụng phương thức Array.prototype.join() để nối các phần tử mảng thành chuỗi.

Cú pháp

array.join(separator?)
  • separator (tùy chọn): Chuỗi phân cách. Mặc định: "," (không có space).
  • Trả về: String.

Ví dụ

<!DOCTYPE html>
<html>
<body>
    <script>
        var arr = ["Java", "PHP", "Ruby"];
        
        // Mặc định: phân cách bằng dấu phẩy
        var str1 = arr.join();
        document.write("join(): " + str1 + "<br>"); // "Java,PHP,Ruby"
        
        // Tùy chỉnh: dấu phẩy + space
        var str2 = arr.join(", ");
        document.write("join(', '): " + str2 + "<br>"); // "Java, PHP, Ruby"
        
        // Phân cách khác
        document.write("join(' | '): " + arr.join(" | ") + "<br>"); // "Java | PHP | Ruby"
        document.write("join(''): " + arr.join("") + "<br>"); // "JavaPHPRuby"
    </script>
</body>
</html>

Lưu ý:

  • join() không thay đổi mảng gốc.
  • null/undefined trong mảng → chuỗi rỗng "".
  • Object trong mảng → toString() (thường là "[object Object]").

Ngược lại: String → Array

"Java,PHP,Ruby".split(",")     // ["Java", "PHP", "Ruby"]
"Java, PHP, Ruby".split(", ")  // ["Java", "PHP", "Ruby"]
"Java|PHP|Ruby".split("|")     // ["Java", "PHP", "Ruby"]

Ứng dụng: CSV đơn giản

const users = [
    {name: "An", age: 20},
    {name: "Bình", age: 25}
];
const csv = users.map(u => `${u.name},${u.age}`).join("\n");
// "An,20\nBình,25"