我在网上看过一段代码。
function isMobile() {
var index = navigator.appVersion.indexOf("Mobile");
return (index > -1);
}
为什么我们不能检查索引是否为>或者< 0?请解释返回索引> -1
答案 0 :(得分:4)
如果indexOf
的结果为-1
,则找不到该字符串。 0
表示它在字符串中,并且它实际上是在字符串的开头。
因此,如果您测试了> 0
,那么您将检查它是否存在于不在字符串开头的某个地方。 !(index < 0)
和index >= 0
也会起作用,但前者比它需要的要复杂一点。
如果您对语法感到困惑,则返回比较结果与返回true
相同,如果比较结果为true
,则返回false
时比较结果为{ {1}}。
答案 1 :(得分:1)
indexOf
时, navigator.appVersion
返回-1。如果“移动”位于(index > -1)
,则返回true
相当于返回navigator.appVersion
,如果不移动则返回false
。