我同意@JCOC611,但也有可能您将所有内容都作为对象的一部分,然后也version
将对象作为属性,您可以在其中添加一个名为 的方法lessThan
,因此您将拥有类似的内容:
var browserStuff = {
browser: {
value: "",
is: function (comparator) {
if (browserStuff.browser.value == comparator) {
return true;
}
return false;
}
},
version: {
value: "",
lessThan: function (comparator) {
if (browserStuff.version.value < comparator) {
return true;
}
return false;
}
},
init: function () {
// Do your stuff to determine the browser and its version
// You need to set browserStuff.version.value and browserStuff.browser.value
delete browserStuff.init;
}
}.init();
然后像这样使用它:
if (browserStuff.browser.is("IE")) {
}
或者
if (browserStuff.version.lessThan("7")) {
}
您必须为“大于”和“不等于”等添加更多内容,但这只是开始。
我并不完全建议这样做,因为您可以轻松地使用普通的 Javascript 运算符来完成同样的事情,而冗余代码更少。此解决方案更适合“可读”主题,但绝不是必要或更好的。