Your Web browser is probably the best example. When you visit a Web site, your browser discovers resources and understands how it can interact with them.
Any behavior that is not defined in the spec[0] is, by definition, an implementation detail. Relying on undefined behavior is a recipe for bugs. If you need an immutable array, and the spec doesn't require the returned array to be immutable, you should create one yourself.
>Buffer also comes with additional caveats. For instance, Buffer#slice() creates a mutable segment linked to the original Buffer, while Uint8Array#slice() creates an immutable copy, resulting in possible unpredictable behavior. The problem is not the behavior of the Buffer#slice() method, but the fact that Buffer is a subclass of Uint8Array, but changes the behavior of an inherited method.
But this is an implementation detail, not specified behavior. Changing method behavior in subclasses is a key aspect of inheritance.
Being tall gives you an obvious advantage at basketball. As a result many tall people are drawn to pursuing a career in basketball. Could it be that ADHD gives you an advantage at the kind of tasks involved in software engineering, and that many people with ADHD are naturally drawn to this kind of work, even though the advantage is not so obvious as a physical characteristic like height?