Home  >  Article  >  Web Front-end  >  Sharing tips on && and || expressions in javascript_javascript tips

Sharing tips on && and || expressions in javascript_javascript tips

WBOY
WBOYOriginal
2016-05-16 16:05:031045browse

If you are a newbie, and after reading the detailed explanation of all these techniques and how each technique works and then applying them, you will write more concise and efficient JavaScript programs.

Indeed, JavaScript masters have used these techniques to write many powerful and efficient JavaScript programs. But you can do this.

Powerful && and || expressions
You may have seen them in JavaScript libraries and JavaScript frameworks, so let’s start with a few basic examples:

Example 1. || (or)
Set default value, usually use

Copy code The code is as follows:

function documentTitle(theTitle) {
if (!theTitle) {
theTitle = "Untitled Document";
}
}

Replace this with:

Copy code The code is as follows:

function documentTitle(theTitle) {
theTitle = theTitle || "Untitled Document";
}

Analysis:

First, read the following "Tips" box to review how JavaScript determines Boolean values ​​
The || operator first judges the truth or falsehood of the expression from the left. If it is true, it immediately returns the value returned by the expression on the left; if the expression on the left is judged as false, it continues to judge the expression on the right and returns the expression on the right. The value of
If theTitle is evaluated to be false, the value of the expression on the right will be returned. In other words, if theTitle variable is evaluated to be true, the value of theTitle will be returned.
! Tip:
Values ​​judged as false by JavaScript: null, false, 0, undefined, NaN and "" (empty string).
Remember that NaN values ​​like Infinity are evaluated as true and not false. However, NaN is evaluated as false.
Except for the above, all other values ​​​​are judged to be true.

Example 2. && (and)

Don’t do this:

function isAdult(age) {
 if (age && age > 17) {
  return true;
 } else {
  return false;
 }
}

Replace this with:

Copy code The code is as follows:

function isAdult(age) {
return age && age > 17;
}

Analysis:

The&& operator evaluates expressions from the left. If the expression on the left is evaluated as false, it immediately returns false, regardless of whether the expression on the right is true.
If the expression on the left is true, continue to evaluate the expression on the right, and then return the result of the expression on the right
This is getting fun

Example 3.

Don’t do this:

if (userName) {
 logIn(userName);
} else {
 signUp();
}

Replace this with:

Copy code The code is as follows:

userName && logIn(userName) || signUp();

Analysis:

If userName is true, call the logIn function and pass the userName variable
If userName is false, call the logIn function without passing any variables

Example 4.
Don’t do this:

var userID;

if (userName && userName.loggedIn) {
 userID = userName.id;
} else {
 userID = null;
}

Replace this with:

Copy code The code is as follows:

var userID = userName && userName.loggedIn && userName.id;

Analysis:

If userName is true, call user.loggedIn and check whether user.loggedIn is true; if it returns true, return the return value of the third expression
If userName is empty, return null

The above is the first JavaScript tip shared with you in this article. I hope you will like it.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn