腾讯前端实习面试被问到的问题

面试前端,只知道基本的javascript、jQuery、css、HTML,今天被问到几个问题,回答的不好,现在百度之,找出答案。
问题一:做web前端,怎么优化,知道雅虎的前端优化30多条军规吗?
说了些优化方案,只有雅虎的,真不知道呀,百度结果如下:
雅虎WEB前端– 34条军规
1.Minimize HTTP Requests (减少HTTP请求)
2.Use a Content Delivery Network (利用CDN技术)
4.Gzip Components (Gzip压缩)
5.Put Stylesheets at the Top (把CSS放顶部)
6.Put Scripts at the Bottom (把JS放底部)
7.Avoid CSS Expressions( 避免CSS Expressions)
8.Make JavaScript and CSS External (将JS和CSS外链)
9.Reduce DNS Lookups (减少DNS查找)
10.Minify JavaScript and CSS (减小JS和CSS的体积)
11. Avoid Redirects (避免重定向)
12. Remove Duplicate Scripts (删除重复脚本)
Etags(Entity tags)是服务器和浏览器的一个功能,它用来判断浏览器缓存里的元素是否和原来服

务器上的一致。ETags比last-modified date更具有弹性,它用一个独一无二的字符串来标识一个元素的版本
14. Make Ajax Cacheable (缓存Ajax)
15. Flush the Buffer Early (尽早的释放缓冲)
当用户进行页面请求时,服务器端需要花费200到500毫秒时间来拼合HTML,将写在head与body之

间,释放缓冲,这样可以将文件头先发送出去,然后再发送文件内容,提高效率。
16. Use GET for AJAX Requests( 用GET方式进行AJAX请求)
Get 方法和服务器只有一次交互(发送数据),而 Post 要两次(发送头部再发送数据)。
17. Post-load Components (延迟加载组件)
最先加载必须的组件进行页面初始化,然后再加载其他,可以参考YUI Image Loader 。
18. Preload components (预加载组件)
提前加载以后可能用到的东西,和延迟加载并不冲突,它的目的是为后续请求提供更快的响应
19. Reduce the Number of DOM Elements (减少DOM元素数量)
复杂的页面结构意味着更长的下载及响应时间,更合理更高效的使用标签来架构页面,是好的前

端的必备条件。
20. Split Components Across Domains (跨域分离组件)
21. Minimize the Number of iframes (减少iframe数量)
22. No 404s (不要出现404页面)
23. Reduce Cookie Size (减小Cookie)
24. Use Cookie-free Domains for Components (对组件使用无Cookie的域名)
对静态组件的Cookie读取是一种浪费,使用另一个无Cookie的域名来存放你的静态组件式一个好方

法,或者也可以在Cookie中只存放带www的域名。
25. Minimize DOM Access (减少DOM的访问次数)
26. Develop Smart Event Handlers (开发灵活的事件处理句柄)
27. Choose < link >over @import (使用< link >而非 @import)
28. Avoid Filters (避免过滤器的使用)
29. Optimize Images (优化图片)
30. Optimize CSS Sprites (优化CSS Sprites)
31. Don’t Scale Images in HTML (不要在HTML中缩放图片)
32. Make favicon. ico Small and Cacheable (缩小favicon. ico的大小并缓存它)
33. Keep Components under 25K (保证组件在25K以下)
34. Pack Components into a Multipart Document (将组件打包进一个多部分的文档中)
问题二:介绍下XSS攻击,有哪几种,怎么预防?
百度之:
XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性。其原理是攻击者向有XSS漏洞的网站中输入(传入)恶意的HTML代码,当其它用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如,盗取用户Cookie、破坏页面结构、重定向到其它网站等。
XSS漏洞分为两种,一种是DOM Based XSS漏洞,另一种是Stored XSS漏洞。理论上,所有可输入的地方没有对输入数据进行处理的话,都会存在XSS漏洞,漏洞的危害取决于攻击代码的威力,攻击代码也不局限于script。
防御DOM Based XSS
防御方法:首先,还是应该做输出防御编码的,但后面如果是输出到事件或脚本,则要再做一次javascriptEncode编码,如果是输出到HTML内容或属性,则要做一次HTMLEncode。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值