Comments (7)
@mcanes Where are you trying this? Both my local CoffeeScript install, and the 'Try CoffeeScript' page, alert 'true' with that code. Both with and without your parentheses.
from coffeescript.
I use the ternary operator a lot too, and CoffeeScript uses it whenever possible (because it's already an expression). There's no special syntax for it in CoffeeScript, just this:
lunch: if wednesday then spaghetti else lasagna
Compiles into:
var lunch;
lunch = wednesday ? spaghetti : lasagna;
I realize its slightly longer, but less cryptic, I hope. If you want to break it up, this will compile in to the exact same JavaScript ternary:
lunch: if wednesday
spaghetti
else
lasagna
As to the triple equals, there is not going to ever be a ==
in CoffeeScript. You can use ==
for triple equals (like what it means in most languages), or you can use is
, and isnt
.
from coffeescript.
Thanks Jeremy, that works fine, i didn't know about that syntax. however if you ever decide to allow a straight ternary syntax, you'll have my vote :-)
from coffeescript.
It's a real gotcha in my opinion because a C/Java/JS style ternary doesn't cause the compiler to complain, but gives unexpected results.
alert 5 > 4 ? "bigger" : "not bigger" # alerts "true"
from coffeescript.
alert(5 > 4 ? "bigger" : "not bigger") # alerts "bigger"
from coffeescript.
@ukslim: this issue is more than a year and a half old and long settled. If you have a question, please open a new issue, ask it on IRC, or ask it in the google group.
from coffeescript.
@ukslim On the 'Try CoffeeScript' page using chrome and Firefox
This is the coffee script code
alert( if 5 > 4 then "bigger" else "not bigger")
and the generated js
alert(5 > 4 ? "bigger" : "not bigger");
from coffeescript.
Related Issues (20)
- Bug?: Cannot Base64 encode value: 0 (Legacy browser/WSH) HOT 2
- Unnecessary `splice` ref added for Array destructuring with rest element not in last position HOT 4
- Bug: Re-ordered nested non-end BindingRestElement doesn't get transpiled HOT 1
- CoffeeScript is fantastic, please donβt give it up HOT 1
- How to imitate `let` behavior in loops? HOT 5
- Proposal: Alternative file extension HOT 1
- Bug: Excessive variable and shallow copy for leading or middle rest parameter
- Proposal: Introduce `let` statement. HOT 6
- Proposal: Document Existential Operator Assignment
- Site issue: code blocks twitch on hover HOT 2
- Proposal: cake command should support ES6 modules HOT 2
- Need help understanding class member meanings HOT 1
- CLI `npm` `scripts` and input `.coffee` file/s as last argument conflicting with `--watch` HOT 2
- Bug: wrong code is transpiled for function call without parentheses HOT 2
- Proposal: Add end word to close method or class HOT 2
- Bug: Invalid indentation allowed after `do`
- Bug: Remove checkShebangLine multi arguments check HOT 1
- feature_request(html): backend CoffeeScript compilation inside HTML files HOT 3
- Bug: yield cannot be used in do -> expressions reliably? HOT 5
- [not an issue] An embeddable playground for CoffeeScript 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 coffeescript.