在JavaScript中,在string
中搜索regex
匹配的语法为string.search(regex)
。类似于match
,replace
和split
。
那么,在test
的情况下,为什么在regex.test(string)
中逆转正则订单?为什么不像其他正则函数一样 string.test(regex)
?
那么,在测试情况下,为什么在
regex.test(string)
中逆转正则订单?string.test(regex)
为什么不像其他正则功能一样呢?
因为这是语言设计的方式。因此,对此类语言设计决策的讨论或猜测也不是,在许多情况下,这种背景在时间的雾中丢失。
如果您是为了具有String#test
功能,则
String.prototype.test = function(re) { return re.test(this); };
或
String.prototype.test = function(re) { return this.search(re) !== -1; };
所有正常的警告都涉及增加内置类型原型的危险。