口试闯关1

口试闯关1

在口试过程当中,总会被问到一些你用到过、然则记不清一些细碎的学问,如今做一下总结。

第一部份:HTML+CSS

1.经常运用那几种浏览器测试?有哪些内核(Layout Engine)?

  • 重要内核:Trident,Gecko,Presto,Webkit。

  • IE(Trident)、Firefox(Gecko)、Opera(Presto)、Chrome(Webkit)

2.box-sizing经常运用的属性有哪些?离别有什么作用?

  • content-box:在宽度和高度以外绘制元素的内边距和边框。

  • border-box:为元素指定的任何内边距和边框都将在已设定的宽度和高度内举行绘制。

  • inherit:从父元素继续 box-sizing 属性的值。

3.Doctype作用?规范形式与兼容形式各有什么辨别?

  • Doctype作用:示知浏览器的剖析器用什么文档规范剖析这个文档。DOCTYPE不存在或花样不正确会致使文档以兼容形式显现。

  • 辨别:规范形式的排版和JS运作形式都是以该浏览器支撑的最高规范运转。在兼容形式中,页面以宽松的向后兼容的体式格局显现,模仿老式浏览器的行动以防备站点没法事情。

4.页面导入款式时,运用link和@import 、行内、嵌入中有什么辨别?

  • 行内:落空的css的上风,然则优先级最高

  • 嵌入:style体式格局,修正起来庞杂

  • @inportant:页面悉数加载完成才导入css,在页面异常大的情况下会到时页面加载完成闪一下涌现款式

  • link:在页面加载之前加载css文件

<!– more –>

5.引见一下你对浏览器内核的明白?

重要分红两部份:衬着引擎(layout engineer或Rendering Engine)和js引擎。

衬着引擎:担任获得网页的内容(HTML、XML、图象等等)、整顿讯息(比方到场CSS等),以及盘算网页的显现体式格局,然后会输出至显现器或打印机。
浏览器的内核的差别关于网页的语法诠释会有差别,所以衬着的结果也不相同。一切网页浏览器、电子邮件客户端以及别的须要编辑、显现收集内容的应用程序都须要内核。

JS引擎则:剖析和实行javascript来完成网页的动态结果。

最最先衬着引擎和JS引擎并没有辨别的很明白,厥后JS引擎愈来愈自力,内核就倾向于只指衬着引擎。

6.html5有哪些新特征?怎样处置惩罚HTML5新标签的浏览器兼容问题?怎样辨别 HTML 和 HTML5?

HTML5如今已不是SGML的子集,重如果关于图象,位置,存储,多任务等功能的增添。

  • 拖拽开释(Drag and drop) API
    语义化更好的内容标签(header,nav,footer,aside,article,section)

音频、视频API(audio,video)
画布(Canvas) API
地舆(Geolocation) API
当地离线存储 localStorage 历久存储数据,浏览器封闭后数据不丧失;
sessionStorage 的数据在浏览器封闭后自动删除

表单控件,calendar、date、time、email、url、search
新的手艺webworker, websocket, Geolocation

  • 移除的元素

纯表现的元素:basefont,big,center,font, s,strike,tt,u;

对可用性发生负面影响的元素:frame,frameset,noframes;

支撑HTML5新标签:

  • IE8/IE7/IE6支撑经由过程document.createElement要领发生的标签,
    能够应用这一特征让这些浏览器支撑HTML5新标签,

浏览器支撑新标签后,还须要增加标签默许的款式:

  • 固然最好的体式格局是直接运用成熟的框架、运用最多的是html5shim框架
    <!–[if lt IE 9]>

<script> src=”http://html5shim.googlecode.com/svn/trunk/html5.js”</script>
<![endif]–>

7.简述一下你对HTML语义化的明白?

  • HTML语义化:依据内容的结构化(内容语义化),挑选适宜的标签(代码语义化)便于开发者浏览和写出更文雅的代码的同时让浏览器的爬虫和机械很好地剖析。

8.消灭浮动有哪些体式格局?比较好的体式格局是哪种?

第二部份:JS

1.js的基础数据类型?

null 、undefined、boolean、string、number

2.js有哪些内置对象?

数据封装类对象:Object、Array、Boolean、Number 和 String

其他对象:Function、Arguments、Math、Date、RegExp、Error

3.js中的this、call和apply

  • 纯函数挪用,this指向全局对象global

  • 作为对象要领的挪用:指向挪用他的对象

  • 作为组织函数挪用,指向新对象

本身做的总结:链接

4.eval是做什么的?

  • 把对应的字符串剖析成JS代码并运转。 alert(eval(‘2’+’2’)) //alert(4)

应当防止运用eval,不安全,异常耗机能(2次,一次剖析成js语句,一次实行)。

  • JSON字符串转换为JSON对象的时刻能够用eval,var obj =eval(‘(‘+ str +’)’)。

5.null和undefined的辨别?

null是一个示意”无”的对象,转为数值时为0;undefined是一个示意”无”的原始值,转为数值时为NaN。

undefined:

(1)变量被声清楚明了,但没有赋值时,就即是undefined。

(2) 挪用函数时,应当供应的参数没有供应,该参数即是undefined。

(3)对象没有赋值的属性,该属性的值为undefined。

(4)函数没有返回值时,默许返回undefined。

null:

(1) 作为函数的参数,示意该函数的参数不是对象。

(2) 作为对象原型链的尽头。

6.new操作符详细干了什么呢?

(1)建立一个空对象,而且 this 变量援用该对象,同时还继续了该函数的原型。

(2)属性和要领被到场到 this 援用的对象中。

(3)新建立的对象由 this 所援用,而且末了隐式的返回 this 。

7.JSON 的相识?

JSON(JavaScript Object Notation) 是一种轻量级的数据交换花样。它是基于JavaScript的一个子集。数据花样简朴, 易于读写, 占用带宽小。

花样:采纳键值对,比方:{‘age’:’12’, ‘name’:’back’}

参考

口试总结

    原文作者:缓缓先生
    原文地址: https://segmentfault.com/a/1190000008157655
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞