valid-typeof
强制将 typeof
表达式与有效字符串进行比较
配置文件 中的
"extends": "eslint:recommended"
属性启用了该规则
对于绝大多数用例,typeof
运算符的结果是以下字符串字面之一:"undefined"
、"object"
、"boolean"
、"number"
、"string"
、"function"
、"symbol"
和 "bigint"
。将 typeof
运算符的结果与其他字符串字面进行比较通常是输入错误。
规则详情
此规则强制将 typeof
表达式与有效的字符串字面进行比较。
选项
此规则有一个对象选项:
- 8kH841anErbr73utCEBFo1nt9mW8Tc4lmtLdkCzoIeTwByB5GuJCJO/mIVKwnTvbGzAy4H0G/nV6pymfvSNSjIgD8DK1IfVoVkVGzFBvqKsmrtvf+SET+98amQL/MuwRUNwRuqZqS+38axryMtgbVPJgl1RipAqLrLkbMof5sOK19sKtH61MwdiPVVqtLbNBOBXdLTAzt7WFDgbLSh55PSz3C844wyu5h1vQ62sJeqvYdqTrh4lPurrPoCvRwx+I8OmVxJcDSVVV7KdIrH21cxA4y4kZb94+XAYFvzW6DCw=
k7HkpyhTRoT9T3bsrVJ1W9IUT56r3GvYicL0qS8XjwbDvDXG9eGk/CkswpMjh9k+
/*eslint valid-typeof: "error"*/
typeof foo === "strnig"
typeof foo == "undefimed"
typeof bar != "nunber"
typeof bar !== "fucntion"
f/g6SKVZdhoBiPVtnee0m+uPEv1T4kMgIaFUpxdtFwzAZHGBqJ5dJxRHxHHP/cP8
/*eslint valid-typeof: "error"*/
typeof foo === "string"
typeof bar == "undefined"
typeof foo === baz
typeof bar === typeof qux
gQzllAsZ059cLdy1bLUCRpy/53UpPicVmHnc1qqj4NmGBTehrgt8GiKAqMIWgUdrvV+LhZeWQHCBlu2F3l9h+oIrIcssveT6i+4pHaC6RgH16kaWRGbbGVQj5sIYh775
/*eslint valid-typeof: ["error", { "requireStringLiterals": true }]*/
typeof foo === undefined
typeof bar == Object
typeof baz === "strnig"
typeof qux === "some invalid type"
typeof baz === anotherVariable
typeof foo == 5
gQzllAsZ059cLdy1bLUCRpy/53UpPicVmHnc1qqj4NmGBTehrgt8GiKAqMIWgUdrt09r92s6qAJRnyz5qf5hQ0uaTpmZd0Jhi2pfBn8KT5rBqFKgEOA1SX27KX3vH8mQ
/*eslint valid-typeof: ["error", { "requireStringLiterals": true }]*/
typeof foo === "undefined"
typeof bar == "object"
typeof baz === "string"
typeof bar === typeof qux
何时不使用
axX0L/Vts4d2wsI7pzu8/eBbMGIf76kp62yhj0wLHo/0/vJPTBDjUn6tT9EstCII8V3A4VhC9pmi+QMdqMPihYX5Kt9ASB9B5k2ZuFR8iB0cziuynVQ3qR7Yrmbouxge/FlpjMVcwBMexzczMrPl0Q==