Công cụ JavaScript V8

V8 là tên của công cụ JavaScript hỗ trợ Google Chrome. Đó là thứ lấy JavaScript của chúng tôi và thực thi nó trong khi duyệt bằng Chrome. V8 cung cấp môi trường thời gian chạy mà JavaScript thực thi. DOM và các API nền tảng web khác được cung cấp bởi trình duyệt.

V8 là tên của công cụ JavaScript hỗ trợ Google Chrome. Đó là thứ lấy JavaScript của chúng tôi và thực thi nó trong khi duyệt bằng Chrome.

V8 cung cấp môi trường thời gian chạy mà JavaScript thực thi. CácDOM, và điều khácAPI nền tảng webđược cung cấp bởi trình duyệt.

Điều thú vị là công cụ JavaScript độc lập với trình duyệt mà nó được lưu trữ. Tính năng chính này đã kích hoạt sự phát triển củaNode.js. V8 đã được chọn làm công cụ cung cấp năng lượng cho Node.js vào năm 2009, và khi sự phổ biến của Node.js bùng nổ, V8 trở thành công cụ hiện cung cấp một lượng mã phía máy chủ đáng kinh ngạc được viết bằng JavaScript.

Hệ sinh thái Node.js rất lớn và nhờ đó V8 cũng cung cấp năng lượng cho các ứng dụng dành cho máy tính để bàn, với các dự án như Electron.

Các công cụ JS khác

Các trình duyệt khác có công cụ JavaScript của riêng chúng:

  • Firefox cóKhỉ nhện
  • Safari cóJavaScriptCore(còn gọi là Nitro)
  • Cạnh cóLuân xa

và nhiều người khác cũng tồn tại.

Tất cả các động cơ đó thực hiện tiêu chuẩn ECMA ES-262, còn được gọi làECMAScript, tiêu chuẩn được sử dụng bởi JavaScript.

Nhiệm vụ về hiệu suất

V8 được viết bằng C ++ và nó liên tục được cải tiến. Nó có thể di động và chạy trên Mac, Windows, Linux và một số hệ thống khác.

Trong phần giới thiệu V8 này, tôi sẽ bỏ qua các chi tiết triển khai của V8: chúng có thể được tìm thấy trên các trang web có thẩm quyền hơn (ví dụ: trang web chính thức của V8) và chúng thay đổi theo thời gian, thường xuyên hoàn toàn.

V8 luôn phát triển, giống như các công cụ JavaScript khác xung quanh, để tăng tốc độ Web và hệ sinh thái Node.js.

Trên web, có một cuộc đua về hiệu suất đã diễn ra trong nhiều năm và chúng tôi (với tư cách là người dùng và nhà phát triển) được hưởng lợi rất nhiều từ cuộc cạnh tranh này vì chúng tôi nhận được các máy nhanh hơn và được tối ưu hóa hơn năm này qua năm khác.

Tổng hợp

JavaScript thường được coi là một ngôn ngữ thông dịch, nhưng các công cụ JavaScript hiện đại không còn chỉ diễn giải JavaScript mà chúng còn biên dịch nó.

Điều này xảy ra kể từ năm 2009 khi trình biên dịch JavaScript SpiderMonkey được thêm vào Firefox 3.5 và mọi người đều làm theo ý tưởng này.

JavaScript được V8 biên dịch nội bộ vớivừa kịp giờ(JIT)biên soạnđể tăng tốc độ thực thi.

Điều này có vẻ phản trực quan, nhưng kể từ khi Google Maps ra đời vào năm 2004, JavaScript đã phát triển từ một ngôn ngữ thường thực thi vài chục dòng mã để hoàn thành các ứng dụng với hàng nghìn đến hàng trăm nghìn dòng chạy trong trình duyệt.

Các ứng dụng của chúng tôi hiện có thể chạy hàng giờ bên trong trình duyệt, thay vì chỉ là một vài quy tắc xác thực biểu mẫu hoặc tập lệnh đơn giản.

Trong nàythế giới mới, việc biên dịch JavaScript có ý nghĩa hoàn hảo vì mặc dù có thể mất nhiều hơn một chút để có JavaScriptSẵn sàng, sau khi hoàn thành, nó sẽ hoạt động hiệu quả hơn nhiều so với mã được diễn giải thuần túy.


Các hướng dẫn khác dành cho devtools: