前端基础面试题整理(不断更新)

  1. div+css的布局比较table布局有什么优点?
    改版得时候更方便,只需要改css文件
    页面加载速度很快、结构化清晰、页面显示简洁
    表现与结构相分离
    易于优化对搜索引擎更友好,排名更容易靠前

  2. 为什么利用多个域名来存储网站资源会更有效?
    CDN缓存更方便
    突破浏览器并发执行
    节约主域名的连接数,优化页面响应速度
    防止不必要的安全问题

  3. 简述一下src与href的区别
    Src是指向物件的来源地址,是引入。在img、script、iframe等元素上使用
    Href是超文本引用,指向需要连结的地方,是与该页面有关联的,是引用。在link和a等元素上使用。
    使用区别:src用作“拿取”(引入),href用作“连结前往”(引用)

  4. 列出px、em、rem三者的区别,以及各自适应的场景
    Px:像素,相对长度单位,相对于显示器屏幕分辨率而言
    Em:相对长度单位,相对于当前对象内的文本字号,如果当前对象没有设置字体尺寸,则相对于浏览器默认字号
    Rem:相对长度单位,相对于HTML根元素字号尺寸

  5. Typeof和instanceof操作和用法
    Typeof操作符判断基本数据类型;
    Instanceof检测对象的继承关系,左操作数是对象,右操作数是构造函数

  6. Js的基本数据类型和引用数据类型
    基本数据类型:undefined、null、boolean、number、string、symbol
    引用数据类型:object、array、function

  7. 如何编写高性能的JavaScript?
    遵循严格模式:“use strict”;
    将js脚本放在页面底部,加快渲染页面;
    将js脚本成组打包,减少请求;
    使用非阻塞方式下载js脚本;
    尽量使用局部变量来保存全局变量;
    尽量减少使用闭包;
    使用window对象属性方法时,省略window;
    尽量减少对象成员的嵌套;
    缓存DOM节点的访问;
    通过避免eval()和function()构造器;
    给setTimeout()和setInterval()传递函数而不是字符串作为参数;
    尽量使用直接量创建对象和数组;
    最小化重绘(repaint)和回流(reflow);

  8. get和post请求有什么区别?
    它们是http协议的两种数据请求方式。
    get请求可以主动被浏览器缓存,post请求无法缓存,除非是手动去设置;
    get请求的在浏览器回退时候是无害的,而post会再次请求;
    get请求通过url传递,post直接放在请求头中;
    get只支持url编码,post支持多种编码方式;
    get请求在浏览器中有长度限制(ie大概为2kb),post不存在;
    get产生一个tcp数据包,而post产生两个;

  9. 闭包
    闭包的概念:函数A中,有一个函数B,函数B中可以访问函数A中定义的变量或者数据。
    优点:保护函数内的变量安全,加强了封装性,
    缺点:常驻内存,会增大内存的使用量,使用不当会很容易造成内存泄漏。

  10. Css的link和import的区别是什么?
    本质的差别:link属于XHTML标签,而@import完全是css提供的一种方式
    加载顺序区别:当一个页面被加载的时候,link引用的css会同时被加载,而@import引用的css会等到页面全部被下载完成再被加载,所以有时候浏览@import加载css的页面时开始会没有样式,网速慢的时候特别明显
    兼容性区别:@import是css2.1提出的,所以老的浏览器不支持,只有在IE5以上才能识别,而link标签无此问题
    当使用js控制dom时去改变样式,只能使用link,因为@import不是dom可以控制的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值