可能重复:
RegExp的typeof
我有一个例程,用于测试对象是否满足给定的条件。
testForMatch(objectToTest, matchCriteria) {
// all my testing logic here.
}
参数
matchCriteria
是一个对象,例如可以看起来像这样:{
'size' : "large",
'color' : /(blue|red)/
}
在上面的示例中,
matchCriteria
将用于测试 objectToTest
是否具有属性 size
值为 "large"
,且具有属性 color
值为 "blue"
或 "red"
。因此,
matchCriteria
具有将在 objectToTest
中寻找的属性/属性名称,以匹配属性的值。或者,如果给定的值是正则表达式(如上面的 color
),则将在 objectToTest
中对该属性进行 RegExp.test()
匹配。但是,为了正确处理
testForMatch()
中的 matchCriteria
,我需要能够判断属性值是字符串还是 RegExp
对象。我的问题是,如何检测属性值是否为
RegExp
对象?