Comments (11)
You've left out a 4th option.
I'm commenting here because this was the top result when googling "Javascript ternary formatting"
parts = typeof value === "string"
? value.split(" ")
: [ value ];
from contribute.jquery.org.
IMHO it should be either the first or the second one (both can co-exist depending on expression length) but I'd avoid the third one.
from contribute.jquery.org.
@mzgol 👍
from contribute.jquery.org.
The first two are my preference as well.
Though I wonder about the second. I you need to break an inline ternary like that, perhaps an 'if' statement is a better choice.
from contribute.jquery.org.
I'd prefer a ternary with line breaks over a large if statement.
from contribute.jquery.org.
from contribute.jquery.org.
I'll put together a PR for this once the existing ones are merged.
from contribute.jquery.org.
Agreed with above; the rule about when you must break can be governed by the line length enforced by jshint.
from contribute.jquery.org.
Agreed on first and second, but not the third. Who's managing that project anyway? :-P
from contribute.jquery.org.
I usually prefer the first, but the second is more clear for comments if you're documenting all of it.
from contribute.jquery.org.
Following up a bit late in the conversation, I had a discussion with a co-worker on why to choose @nordfjord's 4th option vs @jzaefferer's 2nd option. It came down to how the author interprets the meaning of ? and : in the expression.
4th Option
My preferred style, the ? and : are viewed as the beginnings of the if
and else
statements respectively.
parts = typeof value === "string"
? value.split(" ")
: [ value ];
2nd Option
My co-workers style, the ? and : are viewed as the endings of the condition and if
statement respectively, while the ; marks both the end of the else
statement and the end of the ternary itself.
parts = typeof value === "string" ?
value.split(" ") :
[ value ];
Understanding this now, I am more accepting of either style, despite preferring the 4th option; I like the 4th because the symbols basically introduce the beginning of the differences. That is particularly helpful when the if
/else
statements become complex or long.
And that's my 2.5-years-after-the-fact note. Happy dev-ing!
from contribute.jquery.org.
Related Issues (20)
- Style Guide: Context-changing methods as first method call HOT 2
- CLA Checker: Show time of attempted verification HOT 3
- Wrong link to the github repository for the http://sizzlejs.com/ website HOT 9
- Update CLA check text in maintainers guide HOT 2
- Deploying command is kind of confusing HOT 10
- fresh jQuery style guide
- Clarify the need to setup Wordpress locally HOT 5
- Commits and Pull Requests: Inconsistent with current workflow HOT 6
- Document focus problems in IE HOT 2
- JS styleguide: Replacement for onevar HOT 1
- Document consistency goods with files examples HOT 5
- Prefix commit subjects with semver level HOT 23
- Please clarify documentation issues in "How to Report Bugs" -> Where to Report HOT 4
- Don't require spaces inside expression parentheses HOT 2
- Plugin contribute HOT 1
- Adopt standard module (for new projects) HOT 14
- The JavaScript Style Guide incorrectly says all projects use JSHint HOT 3
- drag actions not working on microsoft touch screen laptops HOT 1
- Delete "Verify the Author Info and CLA" section HOT 1
- CLA link redirects to OpenJS Foundation page with no CLA in evidence HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from contribute.jquery.org.