lib/rules/no-implicit-coercion.js
function getNonNumericOperand(node) {
    const left = node.left,
        right = node.right;

    if (right.type !== "BinaryExpression" && !isNumeric(right)) {
        return right;
    }

    if (left.type !== "BinaryExpression" && !isNumeric(left)) {
        return left;
    }

    return null;
}
function getNonNumericOperand(node) {
    const left = node.left,
        right = node.right;

    if (right.type !== "BinaryExpression" && !isNumeric(right)) {
        return right;
    }

    if (left.type !== "BinaryExpression" && !isNumeric(left)) {
        return left;
    }

    return null;
}
function getNonNumericOperand ( node ) { const left = node . left , right = node . right ; if ( right . type !== "BinaryExpression" && ! isNumeric ( right ) ) { return right ; } if ( left . type !== "BinaryExpression" && ! isNumeric ( left ) ) { return left ; } return null ; }
Returns the first non-numeric operand in a BinaryExpression. Designed to be
used from bottom to up since it walks up the BinaryExpression trees using
node.parent to find the result.
@param {BinaryExpression} node The BinaryExpression node to be walked up on
@returns {ASTNode|null} The first non-numeric item in the BinaryExpression tree or null
Returns the first non - numeric operand in a BinaryExpression . Designed to be used from bottom to up since it walks up the BinaryExpression trees using node . parent to find the result .