mirror of
https://github.com/nodejs/node.git
synced 2025-05-18 22:48:50 +00:00

PR-URL: https://github.com/nodejs/io.js/pull/2072 Reviewed-By: Yosuke Furukawa <yosuke.furukawa@gmail.com> Reviewed-by: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Alex Kocharin <alex@kocharin.ru>
30 lines
837 B
JavaScript
30 lines
837 B
JavaScript
/**
|
||
* @fileoverview Rule to flag comparisons to null without a type-checking
|
||
* operator.
|
||
* @author Ian Christian Myers
|
||
*/
|
||
|
||
"use strict";
|
||
|
||
//------------------------------------------------------------------------------
|
||
// Rule Definition
|
||
//------------------------------------------------------------------------------
|
||
|
||
module.exports = function(context) {
|
||
|
||
return {
|
||
|
||
"BinaryExpression": function(node) {
|
||
var badOperator = node.operator === "==" || node.operator === "!=";
|
||
|
||
if (node.right.type === "Literal" && node.right.raw === "null" && badOperator ||
|
||
node.left.type === "Literal" && node.left.raw === "null" && badOperator) {
|
||
context.report(node, "Use ‘===’ to compare with ‘null’.");
|
||
}
|
||
}
|
||
};
|
||
|
||
};
|
||
|
||
module.exports.schema = [];
|