Null has no property value and cannot get its entity (existence) value. So Null.property returns an error instead of a undefined.
Consider the following code
if (Node.nextSibling.className = = ...) {
...
}
If node or node.nextsibling is empty (null), an error is returned. Therefore, the code for the typical solution is
if ((node) && (next = node.nextsibling) && ...) {
...
}
Then, when the condition is judged a lot, the code will form the following situation
if (
(node) &&
(node.nextsibling) &&
(Node.nextSibling.className = = ...)
... ) {
...
}
As the judging conditions increase, the code becomes very "ugly".
There is a small "trick" that can simplify conditional judgment expressions. We can add an empty object ({}) or 0 (0) as an alternative
if (Next = (node | | 0). nextSibling)) {
...
}
Well, the code above can be written like this.
if ((node | | 0). nextSibling | | 0). ClassName = = ...) {
...
}
Javascript Fence-Conditional judgment