1 / 25
文档名称:

25个Web前端重难点.doc

格式:doc   页数:25页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

25个Web前端重难点.doc

上传人:xxj16588 2016/7/7 文件大小:0 KB

下载得到文件列表

25个Web前端重难点.doc

相关文档

文档介绍

文档介绍:1、 web 前端优化机制? 1 )内容上的优化: 1 )尽量减少 HTTP 请求有几种常见的方法能切实减少 HTTP 请求: 1) 合并文件,比如把多个 CSS 文件合成一个; 2) CSS Sprites 利用 CSS background 相关元素进行背景图绝对定位; 3) 图像地图 4) 内联图象使用 data: URL scheme )减少 DNS 查找 3 )避免重定向: 比如对 Web 站点子目录的后面添加个/ ,就能有效避免一次重定向。 h 与 h/ 二者之间是有差异的。如果是 Apache 服务器,通过配置 Alias 或 mod_rewrite 或 是 DirectorySlash 能消除 1) 使得 Ajax 可缓存: 响应时间对 Ajax 来说至关重要, 否则用户体验绝对好不到哪里去。提高响应时间的有效手段就是 Cache 。其它的一些优化规则对这一条也是有效的。 5 )延迟载入组件(Post-ponents) 6 )预载入组件(ponents) 7 )减少 DOM 元素数量(Reduce the Number of DOM Elements) 8 )切分组件到多个域(ponents Across Domains) .主要的目的是提高页面组件并行下载能力。但不要跨太多域名, 否则就和第二条有些冲突了。 9 )最小化 iframe 的数量(Minimize the Number of iframes) 10 )杜绝 http 404 错误 2 )面向 Server 端: 1 )使用 CDN (Use a Content work) 2) 添加 Expires 或 Cache-Control 信息头 3 )压缩内容(ponents) 4 )设置 Etags (Configure ETags) 5 )尽早刷新 Buffer (Flush the Buffer Early) 6 )对 AJAX 请求使用 GET 方法(Use GET for AJAX Requests) XMLHttpRequest POST 要两步,而 GET 只需要一步。但要注意的是在 IE上 GET 最大能处理的 URL 长度是 2K。 3 )面向 cookie 1 )缩小 Cookie (Reduce Cookie Size) 根据 RFC 2109 的描述,每个客户端最多保持 300 个 Cookie ,针对每个域名最多 20个 Cookie (实际上多数浏览器现在都比这个多,比如 Firefox 是 50个) ,每个 Cookie 最多 4K ,注意这里的 4K 根据不同的浏览器可能不是严格的 4096 。别扯远了,对于 Cookie 最重要的就是,尽量控制 Cookie 的大小,不要塞入一些无用的信息。 2 )针对 Web 组件使用域名无关性的 Cookie (Use Cookie-free Domains ponents) 这个话题在此前针对 Web 图片服务器的讨论中曾经提及。这里说的 Web 组件(Component) ,多指静态文件, 比如图片 CSS 等, Yahoo! 的静态文件都在 上, 客户端请求静态文件的时候,减少了 Cookie 的反复传输对主域名() 的影响。 2、 javascript 闭包? Closure , 所谓“闭包”, 指的是一个拥有许多变量和绑定了这些变量的环境的表达式,因而这些变量也是该表达式的一部分。简单来讲, ECMAScript 允许使用内部函数--即函数定义和函数表达式位于另一个函数的函数体内。而且, 这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时, 就会形成闭包。也就是说, 内部函数会在外部函数返回后被执行。而当这个内部函数执行时,它仍然必需访问其外部函数的局部变量、参数以及其他内部函数。这些局部变量、参数和函数声明(最初时) 的值是外部函数返回时的值,但也会受到内部函数的影响。闭包是通过在对一个函数调用的执行环境中返回一个函数对象构成的。比如, 在对函数调用的过程中, 将一个对内部函数对象的引用指定给另一个对象的属性。或者, 直接将这样一个( 内部) 函数对象的引用指定给一个全局变量、或者一个全局性对象的属性, 或者一个作为参数以引用方式传递给外部函数的对象。保护函数内的变量安全。以最开始的例子为例, 函数 a中i 只有函数 b 才能访问, 而无法通过其他途径访问到,因此保护了 i 的安全性。闭包使用: 1 )在内存中维持一个变量。依然如前例,由于闭包,函数 a中 i 的一直存在于内存中,因此每次执行 c() ,都会给 i 自加 1。 2) 通过保护变量的安