An array is a special variable, which can hold more than one value:
const name = ["Sakib", "Arif", "Fatema"];
Enter fullscre...
For further actions, you may consider blocking this person and/or reporting abuse
This is a great article, but I think you might be shooting yourself in the foot with the title. This could be of great value to people starting out and could serve as a good reference even as they get better, but the title makes it sound more like you already need to have a firm grasp on all the basics before reading it.
When I hear "mastering arrays" I think of weird recursive loops, complex data transformations, etc.
Thanks for your feedback
good post, array is most important concept in frontend data manipulation
yes
Thank you much for the comprehensive overview. Im just missing some hints about performance.
As operations in Javascript are usually highly optimized, performance is hard to predict. And things may be different depending on the array size. Or it might be that an inbuilt function is much faster than it´s Javascript aequivalent.
Are there any common rules we could follow?
You're right that performance in JavaScript can be a bit unpredictable due to the optimizations done by the JavaScript engine (like V8 in Chrome, SpiderMonkey in Firefox, or JavaScriptCore in Safari). However, there are some general rules and guidelines you can follow to write efficient JavaScript code, especially when dealing with arrays and common operations:
General Performance Guidelines
Prefer Built-in Methods: JavaScript engines are often highly optimized for built-in methods. For instance, Array.prototype.map(), Array.prototype.filter(), and Array.prototype.reduce() are usually faster and more reliable than manual implementations of similar functionality.
Avoid Repeated Calculations: If you need to use a computed value multiple times, store it in a variable rather than recalculating it each time.
Minimize DOM Access: Direct manipulation of the DOM is often slow. Try to batch DOM updates or use techniques like documentFragment or innerHTML to minimize the number of reflows and repaints.
Use Local Variables: Accessing local variables is faster than accessing global variables. When possible, declare variables inside functions rather than in the global scope.
Be Mindful of Loop Complexity: Nested loops can lead to quadratic or worse time complexity. Try to minimize their use or optimize them if necessary.
Optimize for Common Cases: If a certain operation is more common than others, try to optimize for that case. For example, if you often need to access elements by index, use arrays rather than objects.
Use Efficient Data Structures: For instance, use Set or Map for unique items or key-value pairs respectively, as they have average time complexities of O(1) for insertion and lookup.
Avoid Unnecessary Array Copies: Methods like slice() or spreading arrays ([...array]) create new arrays. If you don’t need a copy, avoid these methods.
Profile and Measure: Use tools like Chrome DevTools to profile and measure the performance of your code. The real-world performance might differ from theoretical expectations.
Good knowledge refresher!
Thanks
Very useful for beginners.
Great post .. a bonus array in js not really an array its a hash maps
Thank for sharing