Cả new Object() và {} **khởi tạo object rỗng** y hệt nhau.
Khác biệt khi thêm property
// Object literal - thêm property ngay trong khai báo
let a = { name: 'Ayush' };
// Tương đương new Object()
let a = new Object();
a.name = 'Ayush';
// Hoặc
let a = {};
a.name = 'Ayush';
Điểm khác thực tế
{}**ngắn gọn, readable, performant hơn** (engine tối ưu literal).new Object()cho phép truyền argument:new Object(123)→ wrapper Number object (hiếm dùng).{}hỗ trợ **computed property name** (ES6):{ [prop]: value }.{}hỗ trợ **shorthand property**:{ x, y }={ x: x, y: y }.
Khuyến nghị: Luôn dùng {} (object literal). new Object() chỉ dùng khi dynamic wrapper primitive.