Yes, in the past they involve loading locale data and setting up a configuration, so it made sense to create and reuse them.
But today, modern JavaScript engines (like V8 in Chrome, SpiderMonkey in Firefox, and JavaScriptCore in Safari) have optimized the creation of Intl objects. Today, creating a new Intl.NumberFormat object is much faster, and the overhead has been significantly reduced. These optimizations may have made the performance impact negligible in many real-world scenarios.
That said, while creating Intl objects is faster now, in high-performance applications or code that calls formatting functions in tight loops, it could still be a good practice to cache and reuse the Intl objects to avoid unnecessary creation. For most applications, though, the performance difference may no longer be significant.