1/** 2 * @fileoverview Rule to flag when initializing octal literal 3 * @author Ilya Volodin 4 */ 5 6"use strict"; 7 8//------------------------------------------------------------------------------ 9// Rule Definition 10//------------------------------------------------------------------------------ 11 12module.exports = { 13 meta: { 14 type: "suggestion", 15 16 docs: { 17 description: "disallow octal literals", 18 category: "Best Practices", 19 recommended: true, 20 url: "https://eslint.org/docs/rules/no-octal" 21 }, 22 23 schema: [], 24 25 messages: { 26 noOcatal: "Octal literals should not be used." 27 } 28 }, 29 30 create(context) { 31 32 return { 33 34 Literal(node) { 35 if (typeof node.value === "number" && /^0[0-9]/u.test(node.raw)) { 36 context.report({ 37 node, 38 messageId: "noOcatal" 39 }); 40 } 41 } 42 }; 43 44 } 45}; 46