JS性能
文章平均质量分 83
刻刻帝丶
这个作者很懒,什么都没留下…
展开
-
JavaScript条件语句的性能问题
条件语句和循环一样,条件语句同样会改变运行流 JavaScript的条件语句分为两种if-elseswitchif-else是我们最常用的了 不过if-else语句与switch语句很多情况都能够互相替换if(foo){ ...}else{ ...}switch(foo){ case true: ... default:原创 2016-11-06 21:03:27 · 1580 阅读 · 0 评论 -
JavaScript循环语句的性能问题[旧]
在大部分编程语言中, 循环语句消耗了大部分时间而循环语句又是十分重要的编程模式在JavaScript中, 有四种循环类型for循环, while循环, do-while循环, for-in循环前三种循环在其他语言也很常见for-in循环每次迭代同时会搜索实例或时原型属性, 所以它每次迭代会产生更多开销for-in循环最终只有其他三种类型速度的1/7所以,原创 2016-10-22 18:26:27 · 1661 阅读 · 0 评论 -
JavaScript内部属性[[Scope]]与作用域链及其性能问题
学习JavaScript已经很长时间了 今天打算回忆一下作用域的知识 作用域这个知识很基础并且非常重要 下面我就总结一下JavaScript中的作用域以及作用域链的相关知识作用域作用域是什么? 作用域是变量能够引用、函数能够生效的区域 它限制了你对内存空间上值的获取和修改 所有的语言都存在作用域 我们可以理解作用域为js引擎根据名称查找变量的一套规则 理解了作用域,我们才能去理解闭包原创 2016-11-08 20:09:33 · 10192 阅读 · 9 评论 -
JavaScript欺骗词法的eval、with与catch及其性能问题
正常来说,执行期上下文的作用域链是不会改变的 所以很多同学都认为JavaScript中只有词法作用域(静态作用域,作用域由书写代码时函数声明位置决定) 但其实有几种机制是可以欺骗词法的 它们是with()、eval()还有try-catch语句的catch语句 其中with和eval我们不应该去使用(会产生很多问题) 欺骗词法的意思就是欺骗词法作用域 也就是说,在运行时修改作用域链 这原创 2016-11-09 21:04:03 · 2686 阅读 · 1 评论 -
JavaScript循环语句的性能问题
在大部分编程语言中, 循环语句消耗了大部分时间 而循环语句又是十分重要的编程模式在JavaScript中, 有四种循环类型for循环while循环do-while循环for-in循环前三种循环在其他语言也很常见 for-in循环每次迭代同时会搜索实例或原型属性, 所以它每次迭代会产生更多开销 for-in循环最终只有其他三种类型速度的1/7 所以, 除非我们明确需要迭代一个属原创 2016-10-25 23:01:14 · 3039 阅读 · 2 评论 -
jQuery框架常用的性能优化
jQuery作为一个JavaScript非常优秀的库 是我们在学习前端过程中必学的 虽然它的流行程度已经没有那么巅峰了 但是学习了它对我们学习理解其他框架来说很有帮助 今天第一次写jQuery的相关文章,就先把这个性能问题拿出来 因为大家把时间都用在jQuery语法上了,对这个框架的性能优化不是很了解 下面我来给大家总结一下jQuery常用的性能优化选择器的使用jQuery原创 2016-11-02 13:05:06 · 1583 阅读 · 0 评论 -
JavaScript中容易忽视的高效操作——位操作
很多JavaScript的书都很少提到位操作 包括一些字典型的都讲的很少 因为它真的是几乎用不到 第一次接触位运算的时候,还是在学习C语言的时候 位操作是计算机底层的操作,所以它的运算速度非常快位操作JavaScript中数字都是64位格式存储的 我们在位操作的时候,数字被转换为32位数字, 于是位运算就是直接操作这32位数 虽然需要转换,但是位运算仍然要更加迅速 顶级原型中的toS原创 2016-11-18 19:58:23 · 1536 阅读 · 0 评论 -
浏览器重绘与重排的性能优化
了解了浏览器渲染原理之后 我们知道了浏览器听过渲染树计算布局后,就开始绘制页面元素 但是渲染树并不是一成不变的,在我们的脚本当中 它是可能改变的重绘与重排当DOM变化影响了元素的几何属性(宽、高改变等等) 浏览器此时需要重新计算元素几何属性 并且页面中其他元素的几何属性可能会受影响 这样渲染树就发生了改变,也就是重新构造RenderTree渲染树 这个过程叫做重排(reflow)如果D原创 2016-11-25 21:54:30 · 6282 阅读 · 2 评论