2012-07-25 29 views
5

Tôi đã sử dụng javascript trong một thời gian và gần đây đã bắt đầu sử dụng jquery mà tôi sẽ thừa nhận tôi là fan của. <script type='text/javascript' src='../locationOfJquery/jquery.js'></script> cho phép sử dụng thư viện trong các thẻ tập lệnh trên trang đó. Những gì tôi muốn biết là nếu chỉ bao gồm các thẻ tập lệnh làm chậm thời gian tải trang bất kỳ, ngay cả khi không có mã jquery trên trang, và cũng có thể có bất kỳ nhược điểm lớn nào khác khi sử dụng jqueryCó bất kỳ nhược điểm nào để bao gồm thư viện jquery trên trang của tôi không?

+0

Nguồn jQuery được rút gọn là 32kb.Tôi sẽ không bao gồm trừ khi bạn đang thực sự sử dụng nó. jQuery là tuyệt vời, không có nhược điểm! –

+1

Nếu là năm 1999, tôi sẽ nói có. Nhưng trong thời đại ngày nay, nơi mà hầu hết mọi người có tốt hơn dial-up, không ... nó sẽ không ảnh hưởng đến hiệu suất nếu bạn chỉ cần bao gồm các tệp JS khác. – kevin628

+1

Có những nhược điểm đối với jQuery ... đã là một thành viên của SO trong một thời gian, tôi đã nhìn thấy một số sử dụng khá khủng khiếp của jQuery đơn giản chỉ vì nó làm cho mọi thứ rất dễ dàng. Thật dễ dàng để tạo các kịch bản không hiệu quả không cần thiết, đặc biệt nếu bạn học jQuery trước javascript, mà nhiều người mới đang làm. –

Trả lời

5
  • Đặt thẻ tập lệnh ở cuối trang. Điều này sẽ không làm chậm quá trình xử lý DOM trước khi sự kiện onload cháy.
  • Sử dụng phiên bản được rút gọn của jQuery, có kích thước nhỏ như một hình ảnh/biểu tượng nhỏ.
  • Nếu khách truy cập truy cập vào nhiều trang trong trang web của bạn, nó cũng sẽ thường được lưu trong bộ nhớ cache sau lần truy cập đầu tiên của họ. Nó cũng có thể đã được lưu trước trong bộ nhớ cache (hoặc được phục vụ từ một máy chủ nội bộ) nếu bạn sử dụng mạng phân phối nội dung (ví dụ: Google). Ấn tượng đầu tiên tốt là rất quan trọng.

Để trả lời thêm câu hỏi nhỏ bạn có:

  • Nếu không có mã jQuery trên trang, jQuery vẫn phải được phân tích. Bạn có thể xem máy tính của bạn mất bao lâu để phân tích cú pháp jQuery bằng cách sử dụng công cụ lược tả chẳng hạn như công cụ của Chrome.
  • Có các khung làm tối ưu hóa javascript của bạn trên cơ sở mỗi trang, nhưng những công cụ này phải loại bỏ khả năng lưu bộ nhớ cache một tập lệnh so với mức tăng trong phân tích nhanh hơn. Bạn gần như chắc chắn không nên lo lắng về họ. jQuery rất nhẹ so với các khung công tác khác.

số:

Ví dụ trên Chrome khi tải trang web Stackoverflow, yêu cầu thư viện jQuery từ CDN Google, kết quả là:

  • 0.027ms tổng thời gian đã tải xuống jQuery (có thể đã lưu trong bộ nhớ cache)
  • 35.992ms tổng thời gian dành để đánh giá jQuery và thực hiện bất kỳ DOM mặc định nào/Hoạt động CSS

Tất cả đều tương đối tất nhiên. Tôi đặt cược khi bạn tải trang này, bạn không nhận thấy bất kỳ sự chậm trễ nào vì toàn bộ trang mất khoảng 630ms để tải.

+0

Ok sau đó, không nên lo lắng khi triển khai nó – John

0

Bạn không nên bao gồm nó nếu bạn không sử dụng.

32k là một mức giá nhỏ để thanh toán, nhưng tốt hơn là không yêu cầu và tải thêm 0k để tải xuống.

Ngoài ra, và quan trọng hơn, bạn có thể gặp phải xung đột với các khung công tác khác nếu bạn đang sử dụng bất kỳ khung công tác nào.

+0

Hiện tại, tôi không quan tâm đến việc tối ưu hóa thời gian tải một trong những trang web lớn hơn của tôi, nhưng chức năng của jQuery chắc chắn là một sự thuận lợi. – John

+0

Nó sẽ không có bất kỳ tác động đáng kể về thời gian tải kể từ khi trình duyệt sẽ lưu trữ nó, và thời gian để chạy nó là rất nhỏ. Tôi đồng ý tốt hơn là không bao gồm nó trên các trang mà nó không được sử dụng, nhưng không đủ để lo lắng trừ khi nó thực sự dễ dàng (ví dụ: khung của bạn đã có khái niệm bao gồm điều kiện). Không đáng để mất ngủ. Nếu bạn có trang tải chậm, đó không phải lỗi của jQuery. –

+1

Nếu bạn đang xem xét sử dụng jQuery, thì tôi sẽ không lo lắng về việc bao gồm nó ngay bây giờ. Việc tối ưu hóa bạn thực hiện bằng cách loại trừ nó là rất nhỏ. – Andrew

2

Khách hàng sẽ phải tải xuống tập lệnh jQuery (khá nhỏ). Để tối ưu hóa thêm, bạn chỉ có thể sử dụng các phiên bản "Content Delivery Network" được lưu trữ từ Google hoặc Microsoft. Cũng nhớ sử dụng phiên bản được rút gọn để tải xuống nhanh hơn.

This article nêu rõ lý do.

+2

Sử dụng CDN sẽ không thay đổi nhiều thứ. Đó là chủ yếu tốt hơn cho thế giới và máy chủ của bạn hơn là cho một người dùng cá nhân. Nó có thể lưu chúng từ một lần tải xuống, nhưng sau lần đầu tiên một người nào đó truy cập trang của bạn, họ sẽ không phải tải xuống lại jQuery cho dù nó được liên kết với CDN hay máy chủ của bạn. Tôi không nói nó không phải là một điều tốt, nhưng nó sẽ không thay đổi hồ sơ tổng thể của một trang web bằng cách sử dụng jQuery. –

+0

Vâng, tôi đồng ý rằng đó là một tối ưu hóa không đáng kể, nhưng vẫn có thể tiết kiệm được một lượt tải xuống cho hầu hết người dùng (nếu bạn có hàng triệu người dùng mới có nghĩa là 30Kb so với hàng triệu người dùng tiêu thụ băng thông), cộng với giảm độ trễ cho một số khác người dùng cần tải xuống. Tất cả trong tất cả nó là một win win tình hình. Tôi nghĩ rằng nó là giá trị để nhảy trên bandwagon. –

Các vấn đề liên quan