我遇到了以下Javascript代码:
if ((typeof callback).toLowerCase() === 'function')
在每次toLowerCase()
之后调用typeof
?还是只是杂乱无章?
答案 0 :(得分:3)
不不不不不不不不不不不不。
在大多数个案typeof
解析为small list已知的全小写值。
答案 1 :(得分:1)
typeof
返回的所有字符串始终为小写。但是typeof
不是很准确。相反,我建议您使用Object.prototype.toString
代替本文中提到的原因:http://bonsaiden.github.io/JavaScript-Garden/#types.typeof
function typeOf(value) {
if (value === null) return "Null";
if (typeof value === "undefined") return "Undefined";
return Object.prototype.toString.call(value).slice(8, -1);
}
以上typeOf
函数是typeof
运算符的修复程序。它始终返回传递给它的值的正确类型。例如,typeOf([])
返回"Array"
,而typeof []
返回"object"
。您可以在toLowerCase
功能上使用typeOf
。
答案 2 :(得分:-2)
您不必使用.toLowerCase()
。
.toLowerCase()
用于将字符串中的所有字符都设为小写。
typeof
返回操作数的值。