Love it or hate it, you can’t ignore it. Here are some fascinating quirks and unique features of JavaScript that every developer should know about:
➡ JavaScript was created in just 10 days by Brendan Eich in 1995. This rushed development has left us with some interesting quirks.
➡ JavaScript automatically converts values between types, which can lead to unexpected results:
[] + [] results in an empty string (“”).
[] + {} yields [object Object].
Swapping the order ({} + []) gives 0.
{} + {} results in NaN.
➡ Did you know that JavaScript’s Array.prototype.sort sorts elements as strings by default? To sort numbers correctly, you need to provide a compare function:
[1, 100000, 21, 30, 4].sort((a, b) => a – b); // Correctly sorts numbers
➡ Two ways to represent ‘no value’:
undefined: A variable has been declared but not assigned a value.
null: An assignment value representing an intentional absence of any object value.
➡ Before ES6, JavaScript lacked a native module system, leading to the creation of CommonJS, AMD, and UMD. Now, we have ES Modules, but older projects still use the old systems, adding complexity.
➡ The JavaScript world is constantly evolving with new frameworks and libraries. This rapid evolution can feel like a never-ending chase for the latest and greatest tools.
Despite its quirks, JavaScript remains a versatile and essential language for web development. Embrace its uniqueness and leverage its widespread use to build amazing projects