问:我无法理解 "var variable = {" 中的 jquery
Q: I can't understand "var variable = {" in jquery
我正在修改另一个人编写的 jQuery 源代码。
但是有一个我无法理解的var定义。
我不知道这段代码,所以我用谷歌搜索,但找不到任何答案。
js
var isMobile = {
Android: function() {
return navigator.userAgent.match(/Android/i);
},
BlackBerry: function() {
return navigator.userAgent.match(/BlackBerry/i);
},
iOS: function() {
return navigator.userAgent.match(/iPhone|iPad|iPod/i);
},
Opera: function() {
return navigator.userAgent.match(/Opera Mini/i);
},
Windows: function() {
return navigator.userAgent.match(/IEMobile/i);
},
any: function() {
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
}
};
我想知道这段代码是什么意思。
另外,我想知道语法,比如
js
var isMobile = {
Android: function() {
return window.navigator.userAgent.match(/Android/i);
},
Android:
是什么意思?
此代码正在定义一个对象并将其分配给名为“isMobile”的变量。
“Android”是那个对象的属性,它的值是一个函数。
该函数对浏览器的用户代理字符串进行测试,以确定它在 android 浏览器中是否为 运行。
所有这些一起允许其他代码通过调用 isMobile.Android()
.
来确定它在 android 浏览器中是否是 运行
或通过调用 isMobile.iOS()
或 iOS,依此类推。
isMobile.any()
遍历其他函数,调用它们以查看它们中的 any 是否为真;所以如果你想知道你是否 运行 在移动设备上但不关心具体是哪种,你可以使用这个。
每个浏览器都提供一个名为 navigator
的变量,其中包含有关浏览器的信息,其中 userAgent
属性 提供有关浏览器和版本的线索。我 运行 勇敢,这就是 navigator
对我来说的样子。我突出显示了 userAgent
部分。
userAgent
值可能有点让人恼火。我是 运行 Brave,但 userAgent 字符串提到了 Mozilla、Gecko、Chrome 和 Safari。啊。但那是另外一回事。
如我所说,您可以在此值中寻找有关您 运行 浏览器的线索。为此,此代码使用 regular expressions。正则表达式是一种强大的 pattern-matching 语法,用于在字符串中查找子字符串或模式。太复杂了,我无法在这里详细解释,但作为示例,表达式 userAgent.match(/iPhone|iPad|iPod/i)
正在查找 "iPhone"、"iPad" 或 "iPod" userAgent
值。 (斜杠之间的部分是模式,尾部 i
是进行搜索的标志 case-insensitive。)
isMobile
正在返回具有 key-value 对的对象。关键是,例如Android
和 Blackberry
,它们的值基本上是 methods/functions,只有在您尝试访问它们时才会调用。例如。通过调用 isMobile.Android()
将实际调用函数并检查用户代理是否匹配您选择的字符串。
您可以将 isMobile
视为一个对象,该对象具有可通过键访问的方法,您可以调用它来检查浏览器的用户代理是否符合特定条件。
此代码创建 "isMobile" 对象并声明检查移动浏览器类型的函数。检查 https://www.w3schools.com/js/js_object_definition.asp 在 JavaScript 中创建对象。
解释下面一段代码:
var isMobile = {
Android: function() {
return window.navigator.userAgent.match(/Android/i);
}
- isMobile 是一个 JavaScript 对象。
- Andorid 是 属性 个 "isMobile" 对象。此 属性 检查用于浏览网页的浏览器是否为 "Android browser"。 "window.navigator.userAgent.match(/Android/i)" 代码中的这一部分 returns 如果浏览器是 "Andorid" 浏览器则为真。
我正在修改另一个人编写的 jQuery 源代码。
但是有一个我无法理解的var定义。
我不知道这段代码,所以我用谷歌搜索,但找不到任何答案。
js
var isMobile = {
Android: function() {
return navigator.userAgent.match(/Android/i);
},
BlackBerry: function() {
return navigator.userAgent.match(/BlackBerry/i);
},
iOS: function() {
return navigator.userAgent.match(/iPhone|iPad|iPod/i);
},
Opera: function() {
return navigator.userAgent.match(/Opera Mini/i);
},
Windows: function() {
return navigator.userAgent.match(/IEMobile/i);
},
any: function() {
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
}
};
我想知道这段代码是什么意思。
另外,我想知道语法,比如
js
var isMobile = {
Android: function() {
return window.navigator.userAgent.match(/Android/i);
},
Android:
是什么意思?
此代码正在定义一个对象并将其分配给名为“isMobile”的变量。
“Android”是那个对象的属性,它的值是一个函数。
该函数对浏览器的用户代理字符串进行测试,以确定它在 android 浏览器中是否为 运行。
所有这些一起允许其他代码通过调用 isMobile.Android()
.
或通过调用 isMobile.iOS()
或 iOS,依此类推。
isMobile.any()
遍历其他函数,调用它们以查看它们中的 any 是否为真;所以如果你想知道你是否 运行 在移动设备上但不关心具体是哪种,你可以使用这个。
每个浏览器都提供一个名为 navigator
的变量,其中包含有关浏览器的信息,其中 userAgent
属性 提供有关浏览器和版本的线索。我 运行 勇敢,这就是 navigator
对我来说的样子。我突出显示了 userAgent
部分。
userAgent
值可能有点让人恼火。我是 运行 Brave,但 userAgent 字符串提到了 Mozilla、Gecko、Chrome 和 Safari。啊。但那是另外一回事。
如我所说,您可以在此值中寻找有关您 运行 浏览器的线索。为此,此代码使用 regular expressions。正则表达式是一种强大的 pattern-matching 语法,用于在字符串中查找子字符串或模式。太复杂了,我无法在这里详细解释,但作为示例,表达式 userAgent.match(/iPhone|iPad|iPod/i)
正在查找 "iPhone"、"iPad" 或 "iPod" userAgent
值。 (斜杠之间的部分是模式,尾部 i
是进行搜索的标志 case-insensitive。)
isMobile
正在返回具有 key-value 对的对象。关键是,例如Android
和 Blackberry
,它们的值基本上是 methods/functions,只有在您尝试访问它们时才会调用。例如。通过调用 isMobile.Android()
将实际调用函数并检查用户代理是否匹配您选择的字符串。
您可以将 isMobile
视为一个对象,该对象具有可通过键访问的方法,您可以调用它来检查浏览器的用户代理是否符合特定条件。
此代码创建 "isMobile" 对象并声明检查移动浏览器类型的函数。检查 https://www.w3schools.com/js/js_object_definition.asp 在 JavaScript 中创建对象。
解释下面一段代码:
var isMobile = {
Android: function() {
return window.navigator.userAgent.match(/Android/i);
}
- isMobile 是一个 JavaScript 对象。
- Andorid 是 属性 个 "isMobile" 对象。此 属性 检查用于浏览网页的浏览器是否为 "Android browser"。 "window.navigator.userAgent.match(/Android/i)" 代码中的这一部分 returns 如果浏览器是 "Andorid" 浏览器则为真。