前端面试每日3+2(第2天)
冰洋 12/3/2019  每日3+2
当你发现自己的才华撑不起你的野心时,就请安静下来学习吧!

鲁迅说过:
答案仅供参考...
# 1. html为什么需要写<!DOCUTYPE Html>?
解析:
告诉浏览器当前HTML用的什么版本
DOCTYPE是document type的简写,它并不是 HTML 标签,也没有结束标签
# 2. html5有哪些新特性,html新标签的浏览器兼容问题如何处理?
解析:
新元素:
- 各种语义化标签:。。
 - canvas
 - h5拖放 draggabke
 - 地理位置 navigator.geolocation.getCurrentPosition(showPosition);
 - Audio、video
 - 新增input类型:color、date、datetime、datetime-local、email、mouth、number、range、search、tel、time、url、week
 - 新增表单元素:
<datalist> <keygen> <output> - 新增表单属性
- form新增autocomplet、novalidate
 - input新增 utocomplete、autofocus、form、formaction、formenctype、formmethod、formnovalidate、formtarget、height and width、list、min and max、multiple、pattern (regexp)、placeholder、required、step
 
 - 新增存储方式
- sessionStorage
 - localStorage
 - IndexDB
 
 - Html离线web应用(应用程序缓存) 
<html manifest="demo.appcache"> - Manifest 文件:pwd
 - webworker新开一个线程
 - websorket 提供的一种在单个 TCP 连接上进行全双工通讯的协议
 - Html5 SSE :EventSource 接收服务器发送事件通知
 
移除的元素有哪些:basefont,big,center,font,s,tt,u
性能较差的元素:frame,frameset等
兼容方案:
- 提前用createElement创建新标签,再在body中使用
 - 使用插件html5shiv.js插件
 - 注意hack处理
 
# 3. 说一下对html语义化的理解?
解析:
- 结构清晰,便于浏览器和搜索引擎解析;
 - 没有css的情况下,也可以阅读
 - 有利于seo
 - 便于阅读,便于维护
 - 盲人翻译
 
# 4. Doctype 作用? 严格模式与混杂模式如何区分?它们有何意义?
解析:
Doctype告诉浏览器当前的html版本
严格模式的排版和js用作模式是以该浏览器支持的最高标准运行的
混杂模式,向后兼容,模拟老式浏览器的行为以防止站点无法工作
Doctype不错在会导致混杂模式出现
# 5.算法题
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。
如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。
您可以假设除了数字 0 之外,这两个数都不会以 0 开头。
示例:
输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
输出:7 -> 0 -> 8
原因:342 + 465 = 807
解析:
 