我看到有人这样做了
if(typeof myVar === 'string' && myVar.length > 0) {
}
为什么不只是if(myVar) {}
??
我使用typeof进行调试,从不在现实生活中使用它。
答案 0 :(得分:0)
if(myVar){}),不检查myVar的值是否为字符串
typeof myVar === 'string'
帮助你做到这一点。
myVar.length > 0
用于检查myVar是否有一些字符,但它并非万无一失,因为即使空格也算作字符。例如:
让x ='';
然后x.length是2
希望这有帮助。
答案 1 :(得分:0)
这是一个争论。
如果您编写代码,并且您知道“myVar是一个字符串”,那么您的陈述就足够了
if(myVar){}
但是如果mnks调用你的代码,或者任何不了解预期数据类型的人,你必须检查变量的类型和其他东西。在这种情况下,您必须使用===而不是==因为当typeof函数返回非字符串值时会发生什么?
疯狂的世界