Cho cấu hình mặc định:
const DEFAULTS = { theme: 'light', layout: { sidebar: true, width: 1024 }, features: { search: true, chat: false } };
Đọc 4 dòng input: theme (hoặc -), sidebar (true/false hoặc -), width (số hoặc -), chat (true/false hoặc -). Tạo object user chỉ chứa các field do người dùng cung cấp (bỏ qua -). Dùng spread + destructuring có default để MERGE 2 CẤP: top-level merge bằng {...DEFAULTS, ...user}, và 2 nhánh con layout/features cũng phải merge thay vì ghi đè (tức { ...DEFAULTS.layout, ...(user.layout || {}) }). In ra một dòng theo format: <theme>|<sidebar>|<width>|<search>|<chat>.
4 dòng: theme, sidebar, width, chat (mỗi cái có thể là -).
width là số nguyên dương nếu khác -.
Chuỗi theme|sidebar|width|search|chat.
Đang tải editor...