淘宝2015年秋招在线笔试题
1.按照CommonJS规范,在任何模块代码的作用域下内置了以下哪些变量?
module
context
require
exports
2.以下关于application cache的说法,哪些是不正确的?
· 对于目标页面而言,可以通过来启用application cache。
· 对于启用了application cache的页面,该页面默认不会被缓存。
· manifest文件仅在初次访问站点时才会被下载。
· 对于manifest中列出的资源文件,只要它们被修改,下次访问站点时就会被重新下载。
3.下面哪些技术可用于优化 CSS 图片加载 ?
· CSSSprite
· SVGSprite
· Iconfont
· Base64
4。程序员小马对某 Git 仓库执行一系列操作,请写出每个步骤对应的 Git 命令: 1. 从当前分支hotfix 切换到分支 feature 2. 添加新文件 feature.js 3. 提交文件 feature.js,日志消息为“添加新文件”4. 将 feature 分支衍合(变基)到 master 分支(不考虑文件冲突) 5. 推送feature 分支到远程服务器 origin 的同名分支
5.从前端工程师的角度如何提高页面的用户体验。
6.
<divclass='mod-spm'data-spmid='123'>
<divclass='child_a'></div>
<divclass='child_b'></div>
<divclass='child_c'></div>
<divclass='child_d'></div>
</div>
<divclass='mod-spm'data-spmid='456'>
<divclass='child_a'></div>
<divclass='child_b'></div>
<divclass='child_c'></div>
<divclass='child_d'></div>
</div>
<divclass='mod-spm'data-spmid='789'>
<divclass='child_a'></div>
<divclass='child_b'></div>
<divclass='child_c'></div>
<divclass='child_d'></div>
</div>
有dom结构如上,请用原生代码(禁用jQuery作答)实现以下功能:
(a)计算鼠标在mod-spm区域内的停留时长,data-spm不同视为不同区域
(b)尽量减少性能损耗
(c)重复进入计时累加
(b)尽量减少性能损耗
(c)重复进入计时累加
7。有这样一个URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e,请写一段JS程序提取URL中的各个GET参数(参数名和参数个数不确定),将其按key-value形式返回到一个json结构中,如{a:'1', b:'2', c:'', d:'xxx', e:undefined}。
8.简述浏览器中使用js跨域获取数据的几种方法
9.如何配置让 nginx 对 js、html、css 文件进行 gzip 压缩输出?
10.请填写个人github地址
11.编写一个JavaScript函数,输入指定类型的选择器(仅需支持id,class,tagName三种简单CSS选择器,无需兼容组合选择器)可以返回匹配的DOM节点,需考虑浏览器兼容性和性能。
/*** @param selector {String} 传入的CSS选择器。* @return{Array}*/
var query = function(selector){
//返回查找到的节点数组return [];}