<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/tags/v8/best-of/2024" -->

---
title: Best V8 posts of 2024 | daily.dev
description: The most upvoted V8 posts of 2024, curated by the daily.dev community.
canonical: https://daily.dev/tags/v8/best-of/2024
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/tags/v8/best-of/2024
og:type: website
og:site_name: daily.dev
og:title: Best V8 posts of 2024 | daily.dev
og:description: The most upvoted V8 posts of 2024, curated by the daily.dev community.
og:image: https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph
---

# Best of V8 — 2024

1. 1  
[](/posts/how-bun-supports-v8-apis-without-using-v8-part-2--bvfv820me "How Bun supports V8 APIs without using V8 (part 2)")  
Article  
![Avatar of bun](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/9d715eb44dae4d74a2cebd8871d91a0d)Bun · 2y  
How Bun supports V8 APIs without using V8 (part 2)  
Bun aims to support V8 APIs without using V8 by simulating V8's memory layout using JavaScriptCore (JSC) types. Key methods include representing tagged pointers, managing maps and objects, and ensuring that native modules precompiled for the V8 API still function properly. Additionally, Bun implements Node.js-style module registration, allowing easier writing and testing of native addons. Future work will address JSC's garbage collector interaction, representation of various JavaScript values, and other parts of the V8 compatibility layer.  
29  
1
2. 2  
[](/posts/lydia-hallie-javascript-visualized-a-script-s-life-cw9t4xqdp "Lydia Hallie: JavaScript Visualized: A Script's Life")  
Video  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Lydia Hallie: JavaScript Visualized: A Script's Life  
The post explains the process of going from a human-friendly JavaScript file to bytecode that computers can understand. It covers topics such as the HTML parser, V8 engine, byte stream decoder, abstract syntax tree, bytecode generation, shape tables, inline caching, and Turbofan optimizer.  
27  
1
3. 3  
[](/posts/how-bun-supports-v8-apis-without-using-v8-part-1--7aumkutvk "How Bun supports V8 APIs without using V8 (part 1)")  
Article  
![Avatar of bun](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/9d715eb44dae4d74a2cebd8871d91a0d)Bun · 2y  
How Bun supports V8 APIs without using V8 (part 1)  
Bun faces challenges in supporting Node.js native modules that use V8 APIs because Bun uses JavaScriptCore instead of V8\. Despite these differences, Bun has begun to implement many of V8's C++ APIs using JavaScriptCore, allowing popular Node.js native modules to work in Bun. The differences in garbage collection, value representation, and value lifetime between JavaScriptCore and V8 are significant. The post provides a detailed look into JavaScriptCore and V8 API examples, value representations, and the complexities of implementing V8 functions with JavaScriptCore. It also delves into the representation of JavaScript values in both engines and the concept of tagged pointers in V8.  
21
4. 4  
[](/posts/be-aware-of-arrays---v8-engine-advice-btpepnc5a "Be aware of Arrays - V8 engine advice")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 3y  
Be aware of Arrays - V8 engine advice  
Learn about elements kinds in the V8 engine and how they can impact the performance of JavaScript code. Discover how V8 optimizes array operations based on the types of elements in the array. Find out how to avoid creating holey arrays for optimal performance.  
20  
1
5. 5  
[](/posts/getting-things-sorted-in-v8-v8-jpflfgjzm "Getting things sorted in V8 · V8")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
Getting things sorted in V8 · V8  
The V8 engine in Chrome 70 introduced a significant update to Array.prototype.sort by switching from Quicksort to Timsort. Timsort, an adaptive stable algorithm, offers better performance in most cases and handles already sorted sequences efficiently. The post details the quirks of sorting in JavaScript, pre- and post-processing steps in V8, and how the implementation in Torque—a domain-specific language—improves stability and performance predictability. This change addresses long-standing issues and aligns with algorithmic guarantees for better user experiences.  
13

[See all V8 archives](/tags/v8/best-of)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@graph":[{"@type":"CollectionPage","@id":"https://daily.dev/tags/v8/best-of/2024#page","url":"https://daily.dev/tags/v8/best-of/2024","name":"Best V8 Posts of 2024","description":"The most upvoted V8 posts of 2024, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/tags/v8/best-of/2024#items","numberOfItems":5,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/how-bun-supports-v8-apis-without-using-v8-part-2--bvfv820me","name":"How Bun supports V8 APIs without using V8 (part 2)"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/lydia-hallie-javascript-visualized-a-script-s-life-cw9t4xqdp","name":"Lydia Hallie: JavaScript Visualized: A Script's Life"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/how-bun-supports-v8-apis-without-using-v8-part-1--7aumkutvk","name":"How Bun supports V8 APIs without using V8 (part 1)"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/be-aware-of-arrays---v8-engine-advice-btpepnc5a","name":"Be aware of Arrays - V8 engine advice"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/getting-things-sorted-in-v8-v8-jpflfgjzm","name":"Getting things sorted in V8 · V8"}]},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Tags","item":"https://daily.dev/tags"},{"@type":"ListItem","position":3,"name":"V8","item":"https://daily.dev/tags/v8"},{"@type":"ListItem","position":4,"name":"Best of","item":"https://daily.dev/tags/v8/best-of"},{"@type":"ListItem","position":5,"name":"2024"}]}]}
```

