我有一个测试,以查看是否有对象匹配给定标准的程序。
testForMatch(objectToTest, matchCriteria) {
// all my testing logic here.
}
参数matchCriteria
是一个对象可能看起来像这样,例如:
{
'size' : "large",
'color' : /(blue|red)/
}
这matchCriteria
在上面的示例将被用于测试是否objectToTest
具有属性size
与值"large"
,以及值为"blue"
或"red"
的属性color
。
因此matchCriteria
具有将在objectToTest
中寻找的属性/属性名称,目标是匹配属性的值。或者,如果以正则表达式给出的值(如上面的color
的情况),objectToTest
中的财产将是RegExp.test()
'针对给定的正则表达式。
但为了正确地对待matchCriteria
在testForMatch()
,我需要能够告诉如果matchCriteria
属性的值是一个字符串或RegExp
对象。
我的问题是,我如何检测属性的值是否为RegExp
对象?
http://stackoverflow.com/questions/4339288/typeof-for-regexp – mithunsatheesh
@mithunsatheesh,谢谢! –