书签 分享 收藏 举报 版权申诉 / 24

类型前端经典面试题.docx

  • 文档编号:9848493
  • 上传时间:2023-02-07
  • 格式:DOCX
  • 页数:24
  • 大小:29.45KB

200px;float:

left;background-color:

red;">33

200px;margin-right:

200px;background-color:

green;">22

 

第二种办法:

左右采用绝对定位,中间采用margin-left和margin-right

代码:

100%;margin:

0auto;">

200px;position:

absolute;left:

0px;background-color:

#000000;">11

200px;position:

absolute;right:

0px;background-color:

red;">33

200px;margin-right:

200px;background-color:

green;">22

 

第三种办法负margin值

 maincontent

 leftcontent

 right

#main{

 float:

 left;

 width:

 100%;

}

#mainContainer{

 margin:

 0230px;

 height:

 200px;

 background:

 green;

}

#left{

 float:

 left;

 margin-left:

 -100%;

 width:

 230px} 

#right{

 float:

 left;

 margin-left:

 -230px;

 width:

 230px;

#left.inner,

#right.inner{

 background:

 orange;

 margin:

 010px;

 height:

 200px;

}

20,js有几种数据类型?

其中基本数据类型有哪些?

基本数据类型有Boolean,undefined,null,number,string

应用类型有object,array,function

21,undefined和null区别

Null代表空值,代表一种空对象指针,一种特殊对象值

Undefined是未定义,类型也是undefined

22,http和https有什么区别?

如何灵活运用?

Http是http运营在TCP之上,传播内容是明文,客户端和服务器无法验证对方身份。

HTTPS是http运营在SSL/tls之上,SSL/tls运营在TCP上,所有内容都是通过加密。

加密采用对称加密,但是秘钥用服务器证书进行非对称加密。

服务器和客户端都是可以互相验证身份。

23,常用Http状态码

2开头,祈求成功,表达到功解决了祈求状态代码

3开头,祈求重定向,表达完毕祈求,需要进一步操作,普通是重定向

4开头,祈求错误,表达祈求出错,妨碍了服务器解决

5开头,这些状态码表达服务器在尝试解决祈求时发生内部错误,服务器自身出错而不是祈求出错

24,如何进行网站性能优化

因素:

顾客角度加载速度提高,更好交互体验

服务商角度减少页面祈求,减少带宽,节约资源

办法:

1,JavaScript优化和打包

2,按需加载资源

3,在使用DOM操作库时用上array-ids

4,缓存

5,启用HTTP/2

6,应用性能分析

7,使用负载均衡方案

8,同构

9,使用索引加快数据库查询

10,使用更快转译方案

11,避免因JavaScript和css使用而阻塞渲染

12,图片编码优化

 

25,react和vue有哪些不同,说说你对这两个框架看法

相似点:

都支持服务器渲染

均有virtualDOM,组件化开发,通过props参数进行父子组件数据传递,都实现了webComponent规范

数据驱动视图

都支持native方案,reactreactnative和vueweex

不同点:

react严格上只针对MVCview层,vue则是mvvm模式

VirtualDOM不同样,vue会跟踪每一种组件依赖关系,不需要重新渲染整个组件树,而对于react来说,每次应用状态被变化,所有组件都会被重新渲染,因此react需要shouldComponentUPdate这个生命周期函数来进行控制。

组件写法不同样。

数据绑定,vue是双向,react是单向

State对象在react应用中不可变,需要使用setstate办法更新状态,在vue中state对象对象不是必要,数据由data属性在vue对象中管理

26,什么是mvvmmvc有什么区别,原理?

1,MVC(model-view-controller)

MVC是比较直观架构模式,顾客模式->view(负责接受顾客操作输入)->controller(业务逻辑解决)->view(将成果反馈给view)

2,MVVM(model-view-viewmodel)

将”数据模型数据双向绑定”思想作为核心,因而model和view没有什么关系,之后痛过viewmodel进行交互,而model和viewmodel之间交互是双向,因而数据视图变化会同步修改数据源,而数据源数据变化也会立即反映view。

27,px和em区别

Px表达像素,是一种绝对单位,不会由于其她元素而变化

Em表达相对于父元素字体大小,em是相对单位,会受到其她元素影响

28,优雅降级和渐进增强

渐进增强(向上兼容):

一开始就针对低版本浏览器进行构筑界面,完毕基本功能,然后在针对高档浏览器进行效果,交互,追加功能达到更好体验

优雅降级(向下兼容):

一开始就构建站点完整功能,然后针对浏览器测试和修复。

29,eval()作用

把字符串参数解析成JS代码并运营,并返回执行成果;

例如:

eval(“2+3”);//执行加运算并返回执行成果。

Eval(“varage=10”);//声明一种变量age

Eval()作用域

Function(){

Eval(“varx=1”);//等效于varx=1;

Console.log(x);//输出1

}

a();

console.log(x);//错误,没有定义x

30,js哪些操作会泄露内存

1,意外全局变量引起内存泄漏

2,闭包引起

3,没有清理DOM元素应用

4,被遗忘定期器或者回调

5,子元素存在引起

31,浏览器缓存有哪些?

普通缓存有哪几种?

1,HTTP缓存

2,Websql

3,Cookies

4,Localstorage

5,Sessionstorage

6,Flash缓存

 

32,bootstrap响应式原理

比例布局+媒体查询

33,关于js事件冒泡与js时间代理(事件委托)

1,事件冒泡:

当一种子元素被触发时(如onclick),该事件会从事件源(被触发子元素)开始逐级向上传播,出发父级元素点击事件。

2,事件委托:

将子元素事件通过冒泡形式交由父元素来执行

例如:

1. var ul = document.getElementById('parentUl');  

2.     ul.onclick=function (event) {  

3.       var e = event||window.event,  

4.               source = e.target || e.srcElement;//target表达在事件冒泡中触发事件源元素,在IE中是srcElement  

5.         if(source.nodeName.toLowerCase() == "li"){   //判断只有li触发才会输出内容  

6.             alert(source.innerHTML);  

7.         }  

8.         stopPropagation(e);                           //制止继续冒泡  

9.     };  

10.     function addElement() {  

11.         var li = document.createElement('li');  

12.         li.innerHTML="我是新孩子";  

13.         ul.appendChild(li);  

14.     }  

34,css样式覆盖规则

规则一:

由于继承而发生样式冲突时,近来祖先获胜(就近原则);

规则二:

继承样式和直接指定样式冲突时,直接指定样式获胜

规则三:

直接指定样式发生冲突时,样式权值高获胜;

规则四:

样式权值相等时,后者获胜。

规则五:

important样式不被覆盖。

35,请简要描述margin重叠问题以及解决方式

1,同向margin重叠

这时候重叠之后margin值由发生重叠两片最大值决定;如果其中一种浮现负值,则由最大正边距减去绝对值最大负边距,如果没有最大正边距,则由0减去绝对值最大负边距。

解决办法:

(1)在最外层div中加入overflow:

hidden;zoom:

1;(zoom这个属性是ie专有属性,除了设立或者检索对象缩放比例之外,它尚有可以触发iehaslayout属性,清除浮动,清除margin重叠等作用。

(2)在最外层加入padding:

1px;

(3)在最外层加入:

border:

1pxsolid#000000;

2,异向重叠问题:

Float:

left(ie6专属,或解决ie8+等浏览器同向重叠问题)

36,position值,relative\absolute\fixed分别相对于进行谁定位?

Absolute:

绝对定位相对于近来一级

Fixed:

绝对定位相对于浏览器窗口或frame进行定位

Relative:

相对定位相对于其在普通流位置

Static:

默认值没有定位

Sticky:

粘性定位文档位置依照正常文档流计算得出

37,什么是闭包,如何使用,为什么使用?

闭包就是在函数内定义一种函数。

长处:

可以读取函数内部变量这些变量值始终保存在内存中

缺陷:

内存消耗大且容易导致内存泄漏闭包会在父函数外部,变化父函数内部变量值

38,请解释一下jsonp工作原理,以及它为什么不是真正ajax。

Jsonp是一种简朴跨域方式;HTML中script标签可以加载并执行其她域javascript,于是咱们可以通过script标记来动态加载其她域资源

JSONP易于实现,但是也会存在某些安全隐患,如果第三方脚本随意地执行,那么它就可以篡改页面内容,截获敏感数据。

但是在受信任双方传递数据,JSONP是非常适当选取。

AJAX是不跨域,而JSONP是一种是跨域,尚有就是两者接受参数形式不同样

 

39,请解释一下JavaScript同源政策。

同源政策规定跨域之间脚本是隔离,一种域脚本不能访问和操作此外一种域绝大某些属性和办法。

当两个域具备相似合同,相似端口,相似host,那么咱们就可以以为是相似域。

40,如何添加,移除,移动,复制,创立和查找节点?

1,创立新节点

Createdocumentfragment()//创立一种DOM片段

CreateElement()//创立一种详细元素

CreateTextNode()//创立一种文本节点

2,添加,移除,替代,插入

Appendchild()//添加

Removechild()//移除

Replacechild()//替代

InsertBefore()//插入

3,查找

GetelementsBytagname()//通过标签名

Getelementsbyname()//通过元素name属性值

GetelementbyId()//通过元素id,唯一性

41,垃圾回收机制方式及内存管理

垃圾回收机制

1,定义和用法:

垃圾回收机制,执行环境负责管理代码执行过程中使用内存。

2,原理:

垃圾回收机制会定期找出那些不再使用变量,然后释放其内存。

但是这个过程不是实时,开销较大,因此会按固

举报
举报
版权申诉
版权申诉
word格式文档无特别注明外均可编辑修改;预览文档经过压缩,下载后原文更清晰! 立即下载
配套讲稿:

如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

特殊限制:

部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

关 键  词:
前端 经典 试题
提示  冰豆网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:前端经典面试题.docx
链接地址:https://www.bdocx.com/doc/9848493.html
相关搜索
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2008-2022 冰点文档网站版权所有

经营许可证编号:鄂ICP备2022015515号-1

收起
展开