呗踩我...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
不明白这样的写法的含义?在函数内给函数自身赋值?
1 2 3 4 |
|
大家讲道理2017-05-19 10:44:45
在函数内给函数自身赋值 这种情况是会出现的
例如这个函数:
function oneAddTwo () {
let result = 1 + 2
oneAddTwo = function () {return result}
return result
}
举个实际应用场景 有一个函数是判断当前是什么浏览器 这个函数里面有一堆判断逻辑 第一次执行的时候得出当前是ie浏览器 显然你如果第二次调用这个函数就没必要再去执行那一堆判断逻辑 只需要直接返回ie就行了
那么这种时候在这个函数里面可以在第一次执行完之后将自身赋值为另外一个新函数 这个新函数直接返回ie就行了