Finally, if you see yourself operating on keys of an Object generically like this, you might instead be looking for Map, which naturally iterates by "entries", and supports non-string keys.
Learn something new every day.
- I am a senior software engineer working in industry, teaching and writing on software design, SOLID principles, DDD and TDD.
Location
Buenos Aires
Education
Computer Science Degree at Universidad de Buenos Aires
Nevertheless i use many different languages on all my code smells and i like to think them as pseudo code without entering any language details. Your solution is clearly a better one but it is too tied to a particular language.
Learn something new every day.
- I am a senior software engineer working in industry, teaching and writing on software design, SOLID principles, DDD and TDD.
Location
Buenos Aires
Education
Computer Science Degree at Universidad de Buenos Aires
ofwith iterators,inis for string keys of objects (including inherited).for inandfor ofsyntax in js looks likefor (const ident of expression)(whereconstcould beletorvarandofcould bein))in the last statementconsole.logArraymethod is calledforEach(capitalization)so, all in all:
if for some reason you have to use
into iterate over values of an object, it's typically done like this (to avoid iterating over inherited keys)however you should prefer the new iterators, such as
Object.keys(),Object.values()andObject.entries().As such, the above becomes:
Finally, if you see yourself operating on keys of an Object generically like this, you might instead be looking for Map, which naturally iterates by "entries", and supports non-string keys.
See also Set, WeakMap, WeakSet
Wow!
How many detaill!
I will make your corrections
Nevertheless i use many different languages on all my code smells and i like to think them as pseudo code without entering any language details. Your solution is clearly a better one but it is too tied to a particular language.
What other languages do you use?
see my code smells
up to now:
javascript
pyhton
php
golang
java
ruby
Language is accidental
Code smells are not related to any particular language
I write code snippets as examples but I think them most as pseudocode