fnTest = /xyz/.test(function(){xyz;}) ? /\b_super\b/ : /.*/;
答案 0 :(得分:5)
它根据JS引擎是否在Function.prototype.toString()
中包含函数的源代码来选择正则表达式。
正则表达式用于检查函数是否使用_super
类方法;如果知道该函数不使用_super
,则包装器不需要创建super
。
如果Function.prototype.toString()
没有返回源,则强制包装器假定该函数始终使用_super
;因此,/.*/
,总是匹配。
答案 1 :(得分:0)
使用_super
方法进行测试的高度模糊测试方法至少可以说。
请注意,第二个“始终通过”案例/.*/
的一个微不足道的改进是删除贪婪的正则表达式匹配*
,以便只匹配第一个字符。新的正则表达式将是:/.?/