How to Use the New JS Object GroupBy Method

  Рет қаралды 3,793

Steve Griffith - Prof3ssorSt3v3

Steve Griffith - Prof3ssorSt3v3

Күн бұрын

Recently, fully browser baseline support was reached for the Object groupBy method, which is very useful for working with data.
This tutorial explains how the method works and shows a practical demonstration of the method in the browser.
Code from video - github.com/pro...
MDN reference: developer.mozi...
CanIuse reference: caniuse.com/?s...

Пікірлер: 28
@barungh
@barungh 3 ай бұрын
Congratulations on 100K subscribers, and thanks a lot for sharing your knowledge and expertise
@Mark-ms8gk
@Mark-ms8gk 3 ай бұрын
100k! It was a long journey but very well deserved. Congratulations!
@thejarxtv
@thejarxtv 3 ай бұрын
I always enjoy your videos, cheers on those 100K!
@codetechpro
@codetechpro 3 ай бұрын
I always enjoy your videos, something new I learned today, thanks Steve
@muhammadhossam8557
@muhammadhossam8557 3 ай бұрын
very helpful details thanks for your great videos
@cristian702
@cristian702 3 ай бұрын
Welcome back! Just noticed your new videos. Yes!
@shahinza
@shahinza 3 ай бұрын
Thank you professor for the great video
@zbjz
@zbjz 3 ай бұрын
GroupBy Method starts at 5:50
@LucianoClassicalGuitar
@LucianoClassicalGuitar 3 ай бұрын
Finally Steve is back!
@binodsharma112
@binodsharma112 3 ай бұрын
Great video, Thank you
@sachin.tandon
@sachin.tandon 3 ай бұрын
Is there a way of using this function to do a 2-level nested grouped Map/Object, if one were to provide a pair of keys, e.g. { key, sub-key }
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
It really depends on what you are trying to do. You might want to use reduce or flatMap
@deepakvishwakarma2043
@deepakvishwakarma2043 3 ай бұрын
great ! can we also sort this based on no. of items in series instead of random order (length of keys : []) ?
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
You can group by length of keys yes. There is no sorting in an object. The order in an object is based on the order that the keys were added.
@user_8911
@user_8911 3 ай бұрын
It would be nice to add performance comparison section to the video.
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
In terms of real world usage, unless you have multiple thousands of objects in your array it is not going to matter which approach you use. This method is for developer convenience.
@user-dh8rm3ob4f
@user-dh8rm3ob4f 3 ай бұрын
Hello Sir, can you please make videos on node js background processes, how the cores come into play?
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
You can post tutorial requests here - kzbin.info/www/bejne/gnTIq5SuZ9qBacU
@fellastout
@fellastout 3 ай бұрын
Lipstick on a pig (map method)? But it looks useful, thanks Steve.
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
It doesn't return an array, so closer to the reduce method
@xxapoloxx
@xxapoloxx 3 ай бұрын
why is this in object and not in array?.
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
It returns an Object not an array. The Map object also has a groupBy method if the keys are not strings or symbols.
@xxapoloxx
@xxapoloxx 3 ай бұрын
@@SteveGriffith-Prof3ssorSt3v3 so does reduce, this clearly a collection processing functionality, this belongs in array, this bad design.
@aleksandarpopovic3615
@aleksandarpopovic3615 3 ай бұрын
behind the scene movies.reduce((groupBY, item) => { if(!groupBY[item.series]) groupBY[item.series] = []; groupBY[item.series].push(item) return groupBY }, {}) I don't understand the purpose of adding things without some benefit... nothing less code is written... who does not understand reduce, will not understand this either
@SteveGriffith-Prof3ssorSt3v3
@SteveGriffith-Prof3ssorSt3v3 3 ай бұрын
If all you are doing is what you did in that reduce statement, then with the new groupBy you could reduce all the code into this one line: Object.groupBy(movies, ({series})=>series); which I would argue is much easier to read and understand than the reduce method. I've been teaching Array.reduce to students for years and they frequently struggle with the syntax. The more complex the situation, the more options that you are adding, the longer the code becomes, regardless of which option you pick.
@lllllllllIIIIIIIIIIl
@lllllllllIIIIIIIIIIl 3 ай бұрын
You don't see the benefit of writing less code vs. more code? Wow. Where do you work, so we can all know not to apply?
@xyster7
@xyster7 3 ай бұрын
I will never use it, seems to me like another overengineered noise and distraction from the minimalism and simplicity
@UsernameUsername0000
@UsernameUsername0000 3 ай бұрын
????????!!! This exists in almost every main language out there. It’s not over engineering. It’s a common task that shouldn’t need so much boilerplate to achieve.
Enhanced UI control and Responsible Accessibility with the HTML INERT Property
12:02
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 1,7 М.
Chrome Dev Tools Console Super Powers
16:44
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 6 М.
The CUTEST flower girl on YouTube (2019-2024)
00:10
Hungry FAM
Рет қаралды 48 МЛН
Custom Events Dispatched from Web Components
20:32
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 1,9 М.
Boolean Is Not Your Friend
12:45
Zoran Horvat
Рет қаралды 41 М.
Only The Best Developers Understand How This Works
18:32
Web Dev Simplified
Рет қаралды 105 М.
Iterable vs Enumerable in JavaScript
9:15
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 20 М.
Ten Steps to Mastering the Fetch API
2:19:52
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 45 М.
Don't Use Polly in .NET Directly. Use this instead!
14:58
Nick Chapsas
Рет қаралды 60 М.
Chrome Dev Tools Source Panel and Breakpoints
18:21
Steve Griffith - Prof3ssorSt3v3
Рет қаралды 6 М.
Using CSS custom properties like this is a waste
16:12
Kevin Powell
Рет қаралды 170 М.
Master CSS Overflow/Text Wrapping Like A Senior Developer
20:53
Web Dev Simplified
Рет қаралды 52 М.
The CUTEST flower girl on YouTube (2019-2024)
00:10
Hungry FAM
Рет қаралды 48 МЛН