// 这种方式只能对同一作用域的函数进行拷贝
function fn() {
if (true) {
return "你是大聪明"
} else {
return "我是大聪明"
}
}
let str = fn.toString()
let newStr = str.substring(str.indexOf("{") + 1, str.lastIndexOf("}"))
let newFn = new Function(newStr)
console.log(newFn === fn); // false
console.log(newFn()); // 你是大聪明
console.log(fn()); // 你是大聪明
JavaScript 实现函数拷贝(分享)
于 2022-03-18 10:00:15 首次发布
关键词由CSDN通过智能技术生成