web前端面试题-各大公司面试题(百度)

来源:互联网 发布:网络犯罪调查好看吗 编辑:程序博客网 时间:2024/05/23 01:26

马上要换工作了,感觉自己很多东西都只知道怎么弄,不会查百度,不知道原理,网上整理了面试题,作为复习资料。

首先是各大公司的面试题

原始地址
http://www.jackpu.com/2016ge-da-hu-lian-wang-gong-si-qian-duan-mian-shi-ti-hui-zong/

百度

1 写出javascript运行结果

for(var i=0; i<10; i++){} alert(i);

answer:

10

2 Cookie、sessionStorage、localStorage的区别

answer:

SessionStorage 和 localStorage 是Html5 storage API 提供的, 可以把数据保存在本地,避免了数据在浏览器和服务器之间不必要的通信。

sessionStorage,localStorage, cookie 都是在浏览器存储的数据。

不同:
cookie数据始终在同源http中携带,即使不需要,也会在浏览器和服务器间来回传递。Storage只存在本地。
cookie数据有路径概念,可以限制cookie只能在某路径下。

大小不同
cookie:4k Storage:5M

有效期不同
sessionStorage: 仅在当前浏览器关闭前有效
localStorage:始终有效
cookie:过期之前有效

作用域不同
sessionStorage在打开的不同浏览器窗口不共享,即使同一页面
localStorage 在同源页面共享
cookie 同源页面共享

3 JSONP原理
answer:
Ajax存在不能跨域请求数据的问题。而Web上调用Js是不受跨域影响的。因为JSON数据格式恰好被Js支持,web客户端通过调用跨域服务器上动态生成的Js,从而达到跨域请求到JSON包的需求。 为了便于客户端调用JSON数据,形成了非正式的传输协议,也就是JSONP。 客户端传一个callback参数给跨域服务器,跨域服务器返回一个以callback为函数名包裹的JSON数据,这样客户端就可以处理跨域得到的JSON数据了。

4 简述css盒模型
answer:
一个盒子包括 内容 填充 边框 边界,而盒子模型包括这些属性,外边距,边框,内边距,内容。

5 说说get和post请求的区别
answer:
get: 将请求携带的参数直接拼接在url后面,传送的体积小
post: 将请求写在body里,传送的体积大。安全。
一般get用于获取数据,post是将数据传给服务器,进行修改。
这里推荐一篇文章,也细致的讲了区别,值得思考。
http://www.nowamagic.net/librarys/veda/detail/1919

6 运行结果

var a = {n: 1}  var b = a;  a.x = a = {n: 2};  console.log(a.x);  console.log(b.x);

answer:
(a.x)->undefined
(b.x)->[object Object ]
解析:
http://www.bubuko.com/infodetail-712767.html
本题主要考查了js引用模式。
var a = {n: 1}
var b = a;
这两行代码
a 指向了一个对象 A{n:1}
b 也指向了对象A{n:1}
下一行代码很关键
a.x = a = {n: 2};
由于js赋值运算是从右往左的,但是 . 的运算等级最高, 所以 a.x 为对象A 新增了属性 x:undefined。 同时,由于b也指向对象A,所以b.x也是undefined。接着,由于从右往左的特性,先执行a={n:2},这时a指向了对象B{n:2}。
接着执行 a.x=a
很多人会认为这里是“对象B也新增了一个属性x,并指向对象B自己”
但实际上并非如此,
由于( . 运算符最先计算)一开始js已经先计算了a.x,便已经解析了这个a.x是对象A的x,所以在同一条公式的情况下再回来给a.x赋值,也不会说重新解析这个a.x为对象B的x。
所以 a.x=a 应理解为对象A的属性x指向了对象B.
这时,对象A: {n:1 x:对象B} 对象B: {n:2}
所以结果 a.x是输出对象B的x属性,由于遍历到顶端,也没有这个属性,所以输出undefined。 而b.x是输出的对象B。注意这里的[object Object]可不是2个对象的意思,对象的字符串形式,是隐式调用了Object对象的toString()方法,形式是:”[object Object]”。所以[object Object]表示的就只是一个对象罢了。

7 说说类的创建、继承和闭包
answer:
建议阅读JavaScript高级程序设计4-7章。

创建类:factory法,constructor法,prototype法,prototype+constructor结合,动态prototype法。
继承类:
原型链继承 构造继承 实例继承 拷贝继承 组合继承 寄生组合继承
闭包: 在函数外访问函数内变量的方法

8 是否有设计过通用的组件? 请设计一个 Dialog(弹出层) / Suggestion(自动完成) / Slider(图片轮播) 等组件,你会提供什么接口?调用过程是怎样的?可能会遇到什么细节问题?

answer:
具体靠自己经验了。

9 一个页面从输入 URL 到页面加载完的过程中都发生了什么事情?越详细越好(考察知识广度)

answer:
输入地址-》浏览器查找域名的IP地址(DNS查找)-》浏览器向web服务器发送请求-》服务器永久重定向回应-》浏览器跟踪重定向地址-》服务器处理请求-》服务器返回http响应-》浏览器显示html-》浏览器发送请求获取在html中嵌套的资源-》浏览器发送异步请求

10 什么是 “use strict”? 使用它的好处和坏处是什么?
answer:
使用严格模式。消除语法不严谨的地方,保证代码安全,增进代码速度。缺点不知道,失去代码灵活性算吗?

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 营业执照年审过期了怎么办 工商营业执照吊销了怎么办 小规模企业工商年检怎么办 血流变检查偏高怎么办 信誉卡没有邮箱怎么办 税务年报没报怎么办 工商忘记年审了怎么办 营业执照脱审了怎么办 公司年审没有弄怎么办 车检标志丢了怎么办 机动车年检丢了怎么办 汽车保险标志丢了怎么办 车辆年检贴丢失怎么办 车检标贴丢了怎么办 检验标贴丢了怎么办 小车换年检标志怎么办 职称证忘记审验怎么办 联合年报没报怎么办 职称年审过期了怎么办 嘉兴驾模预约怎么办 电大考试去不了怎么办 负债高怎么办房贷 宁波鄞州银行卡怎么办 硕士学位实验数据不好怎么办 小区外过车很吵怎么办 建筑物初级消防证书怎么办 毕业答辩去不了怎么办 卡波西水痘样疹怎么办 58企业认证失败怎么办 炸鸡店没生意怎么办 你好漂亮重名了怎么办 医保卡被冒用怎么办 理财钱被骗走怎么办 个体户怎么办三方协议 社保户籍错了怎么办 身份证号码变更后驾驶证怎么办 公司倒闭欠工资怎么办 海南买房要社保怎么办? 工商核名不过怎么办 税局要求查账怎么办 完税凭证丢了怎么办