I want to have a simple check if a value exists but is not something, that something in my case is the string none
.
in my rest call (which I can't control) I have an inner object that has the status
{
name: "some name",
internal: { // can be null of an object
status: "my status" // can be "none" which means I can't find the status
}
}
I want to check for both, but so far I could only come up with
a = obj?.internal?.status
if (a && a !== "none") {
// code
}
is there a better way to structure my if statement or my code at all?
CodePudding user response:
You can use the Nullish coalescing operator (??
):
const status = obj?.internal?.status ?? 'none';
if (status !== 'none') {
// use the status
}
CodePudding user response:
You could do something like this:
if((obj?.internal?.status || "none") !== "none") {
// code
}
Or you could use the nullish coalescing operator, as jsejcksn says, to make the condition true in case status is an empty string (""
).