https://juejin.cn/post/7139452175088320520
文中提到sentry使用fetch的时候会判断是否被覆盖。
其实现为:
function isNativeFetch(func) {
return func && /^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(func.toString());
}
那么,如果把fetch放大到更多原生方法呢?
function isNativeMethod(func){
if(!func){
return false
}
const reg = new RegExp(`^function\\s${func.name}\\(\\)\\s+\\{\\s+\\[native code\\]\\s+\\}$`);
return reg.test(func.toString())
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。