提前感谢您的耐心......真的试图填补我的JS知识中的奇怪空白......
分析其他人的剧本并遇到:
Var isTouch = "ontouchstart" in window;
“窗口”部分在做什么?我用谷歌搜索了几个基本的变量声明教程并没有提到它,而“in”就是这样一个基本词,很难找到答案。
谢谢,
JK
答案 0 :(得分:2)
表达式someString in someObject
返回一个布尔值,表示该对象是否具有该名称的属性
Spec
如果Var
的{{1}}属性为isTouch
,则您的代码(true
被错误地设置为window
。
答案 1 :(得分:1)
isTouch
现在只是一个布尔值(true或false),因为in
运算符返回一个布尔值:
var foo = {
bar : 42
},
hasBar = 'bar' in foo, // true
hasFoob = 'foob' in foo; // false