1、HTML5的新特性

(1) 绘画canvas

(2) 用于媒介回放的video和audio元素

(3) 本地离线存储localStorage长期存储数据,浏览器关闭后数据不丢失

(4) sessionStorage的数据在浏览器关闭后自动删除

(5) 语义化更好的内容元素,比如article,footer,header,nav,section

(6) 表单控件,calendar,date,time,email,url等

(7) 新的技术webworker,websockt,Geolocation

(8) 移出的元素

a.纯表现的元素:basefont,big,center,font等 b.产生负面影响的元素:frame frameset等

(9) ie8 7 6 支持通过document.createElemet 方法产生新的标签,可以利用这 一特性让这些浏览器支持html5新标签

2、语义化的理解

*HTML语义化就是让页面的内容结构化,便于对浏览器、[搜索引擎](http://lib.csdn.net/base/searchengine)解析;

*在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的;

*搜索引擎的爬虫依赖于标记来确定上下文和各个关键字的权重,利于SEO。

*使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。

3、jQuery与jQuery UI有啥区别?

(1)jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。

(2)jquery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等。

4、垃圾回收机制(GC)

我们一般说的垃圾回收是针对内存而言的。内存在计算机中是很宝贵的一种资源,任何程序的运行都离不开它。由于内存可以被程序操控,为了防止内存被程序滥用,对内存空间进行管理是十分必要的。说到内存管理,自然离不开JS中的垃圾回收机制,有两种策略来实现垃圾回收:【标记清除 和 引用计数;】

函数运行的时候,浏览器自动开辟一块内存 把浏览器内部的各种变量,存放在此内存中运行结束后,用不到的变量,把它自动回收

5、闭包

由于函数内部定义变量作用域问题,如果外部想用这个内部函数创建的一个变量;那就需要在这个函数内部在创建一个函数,创建的这个函数相当于一个桥梁把内部外部函数的变量抛出,这样就解决了不能访问这个变量的问题,那这个内部函数就称为闭包。

闭包的特性:

a.函数内再嵌套函数

b.内部函数可以引用外层的参数和变量

c.参数和变量不会被垃圾回收机制回收

概括的说,闭包就是能够读取其他函数内部变量的函数,在本质上,它是将函数内部和函数外部连接起来的一座桥梁。

6、缓存版本更新

原理:修改资源的地址名,对浏览器来说,就是一个全新的请求

传统方式:在【静态资源】后面加版本号

script(src="indexPage.js?V=20160227")

优点:可以解决缓存造成的问题,能及时更新缓存,让用户访问最新的内容

缺点:在中型,大型项目中,版本号一般是统一加的一个变量,当只是一个小的修改时候,比如说只有一个js脚本发生了变化,这时候所有资源的版本号都更新,造成资源 流量浪费,用户体验不好

解决方式:按需变化

增量式发布: 依赖文本的内容 内容变了,加密的串就变化

优点:提交资源服务器时候,只会把新的文件提交上去,没有变化的文件依然是老的资源,也就是只增加了修改的文件

缺点:文件提交之后,更新的那个文件,可能存在多个版本,造成服务器的空间浪费, 需要定时清理不用的资源

原理:利用md5加密技术

(把需要生成md5串的资源读取过来,利用md5对内容进行加密编译,生成相应的加密串,这个加密串是唯一的,如果资源的内容没有变化,再次进行md5处理,生成的加密串不变化)

7、Typeof的作用

对于数字类型的操作数而言, typeof 返回的值是 number。比如说:typeof(1),返回的值就是number。上面是举的常规数字,对于非常规的数字类型而言,其结果返回的也是number。比如typeof(NaN),NaN在JavaScript中代表的是特殊非数字值,虽然它本身是一个数字类型。在javascript中,特殊的数字类型还有几种:Infinity 表示无穷大特殊值

对于字符串类型, typeof 返回的值是 string。比如typeof("123")返回的值是string。

对于布尔类型, typeof 返回的值是 boolean 。比如typeof(true)返回的值是boolean。

对于对象、数组、null 返回的值是 object 。比如typeof(window),typeof(document),typeof(null)返回的值都是object。

对于函数类型,返回的值是 function。比如:typeof(eval),typeof(Date)返回的值都是function。

如 果运算数是没有定义的(比如说不存在的变量、函数或者undefined),将返回undefined。比如:typeof(sss)、typeof(undefined)都返回undefined

8、常见的状态码分别表示什么

1** (信息类):接受到请求并且继续处理

2** (响应成功):表示动作被成功接受,理解和接受

200 -表示请求被成功完成,请求的资源发送回客户端

202 -接受和处理,但处理未完成

203 -返回信息不确定或不完整

204 -请求收到,但返回信息为空

3** (重定向):为了完成指定的动作,必须接受进一步处理

300 -请求的资源可在多处得到

301 -本页面被永久性转移到另一个URL

304 -自从上次请求后,请求的网页未修改过,服务器返回此响应时,不会返回网页内容,代表上次的文档已经被缓存了,还可以继续使用

305 -请求的资源必须从服务器指定的地址得到

4** (客户端错误类)

400 -客户端请求语法错误,不能被服务器所理解

403 -禁止访问,服务器收到请求,但是拒绝提供服务

404 -服务器无法取得所请求的网页,请求资源不存在。

9、JavaScript异步加载方案

创建script,插入到DOM中,加载完毕后callBack,代码如下:

function loadScript(url, callback){

var script = document.createElement("script")

script.type = "text/javascript";

if (script.readyState){ //IE

script.onreadystatechange = function(){

if (script.readyState == "loaded" || script.readyState == "complete"){

script.onreadystatechange = null;

callback();

}

};

} else { //Others: Firefox, Safari, Chrome, and Opera

script.onload = function(){

callback();

};

}

script.src = url;

document.body.appendChild(script);

}

10、JavaScript中实现类似PHP的print_r函数

function print_r(theObj) {

var retStr = '';

if (typeof theObj == 'object') {

retStr += '

';

for (var p in theObj) {

if (typeof theObj[p] == 'object') {

retStr += '

['+p+'] => ' + typeof(theObj) + '

';

retStr += '

' + print_r(theObj[p]) + '

';

} else {

retStr += '

['+p+'] => ' + theObj[p] + '

';

}

}

retStr += '

';

}

return retStr;

}

html5游戏面试题及答案,HTML5常见面试题及答案(二)相关推荐

  1. 【面试题】Redis篇-常见面试题p1

    [面试题]Redis篇-常见面试题p1 备战实习,会定期的总结常考的面试题,大家一起加油!

  2. mysql常见面试题及答案_MySQL常见面试题与答案整理

    1.MySQL 中有哪几种锁? 1.表级锁: 开销小, 加锁快: 不会出现死锁: 锁定粒度大, 发生锁冲突的概率最高, 并发度最低. 2.行级锁: 开销大, 加锁慢: 会出现死锁: 锁定粒度最小, 发 ...

  3. 2018常见的java面试题_2018新版Java常见面试题

    千锋西安Java编程培训班的老师总结了2018新版Java常见面试题,一起来看! 1.1.java基础 ●面向对象的特征:继承.封装.多态 继承[构造器.protected关键字.向上转型Java实现 ...

  4. 最新Java面试题2021年,常见面试题及答案汇总

    2021最新Java面试题[附答案解析]java面试题及答案2021,java2021最新面试题及答案汇总,2021最Java面试题新答案已经全部更新完了,有些答案是自己总结的,也有些答案是在网上搜集 ...

  5. python面试48题及答案_python常见面试题

    面试问题: 1.python的垃圾回收机制:主要使用引用计数(reference counting)来跟踪和回收垃圾.在引用计数的基础上,通过"标记-清除"(mark and sw ...

  6. 初级python爬虫工程师面试题_Python爬虫工程师常见面试题汇总

    爬虫是Python的重要应用方向之一,也是学习Python的学员求职的主要方向.为了帮助学员更快更好的通过企业面试,小编悉心整理了5道Python爬虫面试题及答案,希望能够给大家提供帮助! 1.简要介 ...

  7. SpringMVC常见面试题(5个最常见面试题,回答超详细)

    以下题目顺序根据面试中问的概率排序的,尽量都背下来啊. 目录 面试题一:什么是Spring MVC ?简单介绍下你对springMVC的理解? 面试题二:SpringMVC的工作流程? 面试题三:Sp ...

  8. mysql常见函数面试题_MySql三到常见面试题,整理总结一下

    最近一个项目数据库在用MySql,于是,关于MySql的相关知识,最近也是恶补了一下.今天,我整理了3道关于MySql通常被面试官问道的问题. 1.MySql查询字段区不区分大小写? 2.MySql ...

  9. 小博老师收集Java经典面试题 ——Servlet和JSP常见面试题

    [面试题] 1.简单说说tomcat的配置? JAVA_HOME=JDK的根目录 CATALINA_HOME=tomcat的根目录 CATALINA-HOME\conf\server.xml:可以配置 ...

  10. java软件开发工程师面试题_Java开发工程师常见面试题01

    Java 基础 1. JDK和 JRE 有什么区别? JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开发环境和运行环境. JRE:Java Run ...

最新文章

  1. .NET简谈组件程序设计之(详解NetRemoting结构)
  2. python3 循环写入一对多键值对_为什么Python 3.6以后字典有序并且效率更高?
  3. VTK:Disk用法实战
  4. imessage_重新设计iMessage以获得更好的用户体验— UX案例研究
  5. 深入react技术栈(1):React简介
  6. 交换机是如何对数据包打标签去标签的_条形码软件如何在标签纸上套打可变条码...
  7. c语言.h文件怎么写,关于C语言中.h文件怎么书写?
  8. div内容居中、隐藏及按钮隐藏写法
  9. Exchange企业实战技巧(1)验证安装及配置产品密钥
  10. 2月21 深度优先与广度优先
  11. 扩展MemberShip的使用:
  12. Himall商城Api签名帮助类
  13. 10 - 箱梁网格划分
  14. JS - Promise使用详解--摘抄笔记
  15. php密码如何用星号表示,输入密码显示星号的写法实例
  16. swoole 协程与go 协程对比
  17. 游戏公司的区块链冒险:一周时间从火爆到熄火
  18. sails mysql_sails-mysql架构数据类型
  19. perl6中的q/qq/qx/qqx
  20. Tkinter定时刷新页面或数据

热门文章

  1. java testng 项目_java – Junit4和TestNG在Maven的一个项目中
  2. 邮件 自动打印 linux,Linux打印文件和发送邮件
  3. Mybatis 一对多关联查询collection用法
  4. 实现微信小程序和支付宝小程序二维码合并
  5. 喵喵的华为DevCloud使用指南(3)-项目构建和部署
  6. 解决file.seek()读取文件报错:AttributeError: ‘str‘ object has no attribute ‘seek‘
  7. 使用sshpass借助scp自动输入密码传输一个文件夹下的全部内容
  8. matlab计算复活节概率,复活节日期的计算方法
  9. java不等长二维数组_Java中关于二维数组的理解与使用
  10. vant在cell中加表格_Vant Cell 单元格