Table of Contents
JavaScript's syntax has improved a lot over the years, leading to safer and more concise code.
One of the things this improved syntax allows for is being able to do an if-else shorthand without the else.
In this post, we'll learn how to use the shorthand if-else syntax in JavaScript.
How to use a ternary operator in JavaScript
To learn how to use this shorthand syntax, we'll first define a normal if-else statement.
JAVASCRIPTconst value = 1;
let result = "";
if (value % 2 === 0) {
result = "Value is even";
} else {
result = "Value is odd";
}
console.log(result);
BASHValue is odd
We can make use of a ternary operator to make this code more concise.
JAVASCRIPTconst value = 1;
let result = value % 2 === 0 ? "Value is even" : "Value is odd";
console.log(result);
BASHValue is odd
This allows us to write the same code in a more concise way.
However, we are still using an else here, just without the actual else keyword.
There is a way we can write this logic in a way where there is no else at all.
How to use the shorthand if-else syntax in JavaScript
To learn how to use the shorthand if-else without an else, let's first define this the long-form way:
JAVASCRIPTconst value = 1;
if (value) {
console.log("Value is truthy");
}
BASHValue is truthy
We could once again use a ternary operator to make this code more concise.
JAVASCRIPTconst value = 1;
value ? console.log("Value is truthy") : null;
BASHValue is truthy
However, we don't, need to explicitly define the else here, as we can just leave it out entirely by using this in a shorthand way with the && operator.
JAVASCRIPTconst value = 1;
value && console.log("Value is truthy");
BASHValue is truthy
If the value is truthy, the second part of the expression will be executed, otherwise, it will be skipped.
How to use a nullish default value in JavaScript
Another instance in where you might want to use an if-else shorthand without an else is when you want to use a default value.
For example, let's say you have an object with a property that you want to use, but you want to use a default value if the property is not defined.
JAVASCRIPTconst value = null;
const obj = {
value: value ? value : 0,
};
console.log(obj);
BASH{
value: 0
}
This can be made more concise by using the ?? operator.
JAVASCRIPTconst value = null;
const obj = {
value: value ?? 0,
};
console.log(obj);
BASH{
value: 0
}
Like before, if the value is truthy, it will use that value, otherwise, it will use the default value, which in this case is 0.
Conclusion
In this post, we learned how to use the shorthand if-else syntax in JavaScript.
We learned how to use a ternary operator to make our code more concise, and we learned how to use the && and ?? operators to make our code even more concise.
We also learned how to use a nullish default value in JavaScript.
Thanks for reading!
Create an RSS Reader in Node
How to deploy a .NET app using Docker
Learn how to use v-model with a custom Vue component
How to Scrape the Web using Node.js and Puppeteer
Getting Started with Handlebars.js
Build a Real-Time Chat App with Node, Express, and Socket.io
Learn how to build a Slack Bot using Node.js
Building a Real-Time Note-Taking App with Vue and Firebase
Setting Up Stylus CSS Preprocessor
Getting Started with Vuex: Managing State in Vue
Setting Up a Local Web Server using Node.js
How To Create a Modal Popup Box with CSS and JavaScript
