Thường thì tôi thấy đối tượng chung được xác định trong mã javascript để hoạt động như một không gian tên.Đối tượng toàn cầu Javascript
var MyNS = {a: function() {}, ... };
Nhưng đôi khi, tôi thấy mọi người rời khỏi "var" từ khóa như
MyNS = {a: function() {}, ...};
Tôi tin rằng trong các trình duyệt web nếu bạn không xác định một biến với var, nó được đưa vào đối tượng cửa sổ , hoạt động như một không gian tên chung. Vì nó tiết kiệm một vài byte văn bản bằng cách không sử dụng "var" là có lý do để sử dụng từ khóa cho mục đích cụ thể này?
+1 - Không chỉ vậy, nó chỉ đơn giản là cẩu thả. Nếu bạn muốn lưu một vài byte chỉ cần rút ngắn mã. – ChaosPandion
Vì vậy, chúng ta cũng có thể khai báo biến toàn cầu bằng 'window.MyNS = {};' và có cùng hàm ý giống như 'var MyNS = {};'? – c4il
@Piccolo, tốt, không chính xác * cùng *, 'window.MyNS = {};' sẽ tạo một thuộc tính * * trên đối tượng chung, trong khi 'var MyNS = {};' sẽ khai báo một biến, và như đối tượng toàn cầu, là đối tượng biến của bối cảnh thực thi toàn cục, một thuộc tính toàn cục cũng sẽ được tạo ra như là kết quả, tôi sẽ khuyên bạn nên xem xét bài viết tôi liên kết trong câu trả lời. – CMS