- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 innerjoin 和 exists的执行效率区别
今天在实现业务时发现经常使用exists语句竟然执行效率低下根本不出结果,反而innerjoin可以瞬间得到结果。后来发现是因为exsits需要从40万的数据集中去匹配200条数据是非常消耗资源的。总结:首先要确定数据分布情况,高命中的情况下使用exists的效率要比innerjoin的高,低命中率的情况下还是使用innerjoin的效率高。如果在不清楚数据分布情况的情况下,直接用inner...
2018-12-07 09:22:00 6274
原创 JavaScript 普通递归和尾递归函数
递归函数是自己调用自己的函数。递归函数执行时会形成一个调用记录,当子一层函数代码执行完成之后父一层函数才会销毁调用记录,这就形成了调用栈。栈的叠加可能会产生内存溢出。n的阶乘//案例一 普通递归function factorial(n){ if( n === 1) return n; return n * factorial(n-1);}//案例二 尾递归...
2018-12-07 09:17:24 217
原创 JavaScript 闭包
闭包的概念我的理解是:闭包就是能够从外部读取函数内部变量的函数。函数形式是由外部函数和内部函数组成,内部函数使用着外部函数的变量,把内部函数直接返回给外部。闭包的写法直接获取结果function foo(c){ var num = c; return function A(){ num++; return num; }}var b = foo(5)...
2018-12-07 09:14:51 102
原创 JavaScript 执行顺序 注意事项
1.var变量提升var是ES5中用于定义变量的保留字。//1.正常情况var a = 3;console.log(a);//输出结果:3//2.只调用console.log(a);//输出结果:Uncaught ReferenceError: a is not defined//3.先调用,后定义console.log(a);var a = 3;//输出结果:u...
2018-12-07 09:09:13 179
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人