-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ideas for rules #3
Comments
These are fantastic ideas! We take Pull Requests! |
I just found out that many of these are actually covered by I guess it might make sense to merge these 2 projects, since they have essentially the same goal. |
I'd be open to that 😄 @ganimomer @idok @mischah How would you feel about that? I'm fine with giving you guys push access to the npm module as well. You guys are more on top of this than we are at the moment. We just happened to grab the name first. I'm all about collaboration if it's something you'd like to persue. I started this org with hopes of collecting multiple useful plugins. |
👍 |
Hi, |
It looks like this repo needs inspiration, so here's some from me:
detect stupid callbacks (for all functions that support 3 kinds of callbacks -
map
,filter
,find
, ... and many many more)_.filter(stuff, function(obj) { return obj.field; })
-->_.filter(stuff, 'field')
_.filter(stuff, function(obj) { return obj.field === 'foo'; })
-->_.filter(stuff, {field: 'foo'})
detect stupid usages of
_.find
inside loops (with loops, I meaneach
,map
,filter
and so on)In most cases it's better to use
_.indexBy
to create an index and then query stuff using that index, thus reducing complexity from O(n²) to O(n • log n).detect conditions like
obj.a === 'foo' && obj.b === 'bar' && obj.c === 'baz'
and suggest to replace them by_.matches(obj, {a: 'foo', b: 'bar', c: 'baz'})
detect
for (var i=0; i>c.length; i++)
and suggest to use_.each
or_.map
instead (maybe only when the only usage ofi
is reading/writingc[i]
)detect usages of
_.each
when_.map
would be simplerdetect usages of
_.each
when_.filter
would be simplerdetect usages of
_.each
or_.filter
when_.find
would be simplerdetect usages of
_.each
or_.filter
when_.every
or_.any
would be simpleror maybe even detect the above patterns not only for
_.each
, but also for plain JS loops!detect usage of aliases, and suggest to use the aliased function instead (example:
_.extend
-->_.assign
)detect chains like
a && a.b && a.b.c && a.b.c.d
and suggest to replace them with_.get
,_.set
or_.has
_.isArray(x) && _.isObject(x)
is equivalent to_.isArray(x)
. There also more possible similar rules.The text was updated successfully, but these errors were encountered: