SPA的前世今生

前言SPA(Single Page Application),即单页应用,想必现在的前端对其早已耳熟能详,今天就来说道说道,SPA 的前世今生。 多页面应用(MultiPage Application,MPA)为什么先说多页面,因为传统网站都是多页面的,从大学第一次做网页,到工作使用 JQ 库,一个个 html 页面拼凑而成的网站都是多页面的。每一次页面跳转的时候,后台服务器都会给返回一个新的 html 文档,这种类型的网站也就是多页网站,也叫做多页应用。多页面跳转刷新所有资源,每个公共资...

阅读全文

使用console进行 性能测试 和 计算代码运行时间

前言对于前端开发人员,在开发过程中经常需要监控某些表达式或变量的值,如果使用用 debugger 会显得过于笨重,最常用的方法是会将值输出到控制台上方便调试。最常用的语句就是console.log(expression)了。 traceconsole.trace()用来追踪函数的调用过程。 在大型项目尤其是框架开发中,函数的调用轨迹可以十分复杂,console.trace()方法可以将函数的被调用过程清楚地输出到控制台上。1<button onclick="myFunction()"...

阅读全文

javascript中的Map

探究javascript Map什么是Map,此处说的Map,非js中的map( )方法,下文会详细解释。Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。ECMAScript6原生实现了Map类,即我们所说的字典,字典和集合很像,不过集合是以值值得形式存储元素,字典则是以键值的形式存储元素。字典也叫映射。 语法1new Map([iterable]) iterable (可迭代传参)Iterable 可以是一个数组或者其他 iterable 对象,其元素为键值对...

阅读全文

javascript垃圾回收机制

前言其实大多数的时候作为javascript开发者不需要太关心内存的使用和释放,因为所有的javascript环境都实现了各自的垃圾回收机制(garbage collector(GC)),但是随着现在的SPA越来越多也越来越大,越来越追求极致的性能渐渐也要求开发者能够适当的了解一些垃圾回收机制内部的实现原理,在性能优化和追踪内存泄漏的时候都能够起到一点帮助。看一段内存泄漏的代码1234567891011121314151617181920var theThing = null;var re...

阅读全文

==的隐式转换

前言==在js中用到的很多,大家都知道两个等于号只判断值,===值和类型都会判断,接下来我们就来看看==是如何判断的 1234567891011121314151617181920212223242526272829303132333435363738 对象 \ 字符串 布尔值 \ / 数值1. 对象和布尔值比较对象和布尔值进行比较时,对象先转换为字符串,然后再转换为数字,布尔值直接转换为数字[] =...

阅读全文


Powered by Hexo and Hexo-theme-hiker

Copyright © 2018 - 2021 胡豪的博客 All Rights Reserved.

访客数 : | 访问量 :