1.H5新增特性:
a.用于播放video,audio元素
b.绘画canvas元素
c.localStorage:长期存储,浏览器关闭数据不丢失;sessionStorage:浏览器关闭自动删除
d.内容元素:footer,header,section 表单控件:date,time,email
2.CSS3新特性:
a.选择器
b.透明度
c.文字阴影
d.媒体查询
e.多栏布局,多背景图,圆角(边框半径),盒子大小
3.CSS几种布局,各自特点:
a.flex布局:也叫盒子布局,根据指定宽度进行布局,父元素:(display:flex),子元素:(宽度:flex:1)
b.float布局:注意浮动元素(高度塌陷解决方法:overflow:auto或者hidden,给父元素加一个aftre伪类)
c.响应式布局:meta标签(使用rem)结合媒体查询@media进行响应式布局
4.CSS水平垂直居中:
a.margin:0 auto;(注意设置宽度)
b.position: top 50% left 50% 减去元素自身宽度距离(未知宽度用transform)
c.flex布局:justify-content:center(水平居中)align-items:center(垂直居中)
5.如何让Chrome支持小于12px的字体
-webkit-transform:scale(XX);
6.rem:相对于页面根元素<html>元素,通常做法是给html元素设置一个字体大小,然后其他元素的大小就是相对于根元素的大小
em:相对于父元素字体大小,元素的width/height/padding/margin用em的话是相对于该元素的font-size
vw/vh:视窗的宽度和高度,相对于屏幕宽度和高度的1%,处理宽度的时候%单位更合适,高度vh更合适
px:像素,相对于屏幕分辨率而言
7.JS哪几种数据类型:Undefined、Null、Boolean、Number和String 还有个object
8.JS中的this:
个人理解(谁调用的便指向谁)
9.JS数组有哪些方法:
a.isArray()判断变量是否是一个js数组
b.forEach()遍历数组
c.map()创建新函数
d.reduce()对数组中每个元素执行函数生成一个值
e.every()检查数组中某个元素是否符合某一条件
f.indexOf()查找原色
g.slice();push():添加元素;split():分割成字符串数组
10.es6常用的一些功能:
a.let const var :
let、const声明的变量仅在块级作用域内有效,var 声明变量是全局的,没有块级作用域功能
let 、const 不存在变量提升 , var 存在变量
let 、const不能在同一块级作用域内重复申请
var变量可以重复声明,值可改变;在同一个块级作用域下:let变量不能重新声明;const定义的变量是常量,声明时必须赋值,但不允许重复赋值,如果定义的是引用类型,可以修改数据内部结构。
b.字符串拼接,可不用+,可以反引号解决
c.钩子箭头函数:也是回调函数的一种,先对所有消息事件进行拦截再执行钩子函数,本质上是事件最后所运行的函数
d.语法糖,可以用class,constructor
11.闭包
闭包可理解为一个作用域,一个函数能够访问其函数外部作用域中的变量
例:var local = '变量'
function foo(){
console.log(local)
//在函数内部可访问local变量
}
12.http协议和baihttps协议的区别:传输信息安全性不同、连接方式不同、端口不同(分别对应80和443)、证书申请方式不同
13.http常用状态码
a.1XX 临时相应
b.2XX 成功
c.3XX 重定向
d.4XX 请求错误 400:服务器不理解的请求的语法 401:未授权 403:禁止请求 404:未找到
e.5XX 服务器错误 500:服务器内部错误 502:错误网关 503:服务不可用 504:超时
14.get与post:
a.get从服务器获取数据,post向服务器传送数据
b.get将数据提交到表单中,在URL中可看到,post通过HTTP post机制,看不到,get安全性不高
c.get在服务器端用Request.QuerString获取变量值 post在服务器用Request.Form获取数据
d.post向服务器传送数据传送数据量大于get
e.GET参数通过URL传递,POST放在Request body中
15.Cookie:一般由服务器生成,可设置失效时间。如果在浏览器端生成Cookie,默认是关闭浏览器后失效。存放数据小
localStorage:长期存储,浏览器关闭数据不丢失
sessionStorage:浏览器关闭自动删除
16.Promise
a.处理异步操作的对象
b.三种状态:进行中(pending),成功(resolved),失败(rejected)
c.then方法里面实为回调函数
例子:https://blog.csdn.net/weixin_41888813/article/details/82882375?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control
https://blog.csdn.net/qq20004604/article/details/76228705
17.MVC(Model-View-Controller)
MVVM(Model-View-ViewModel):核心数据模型数据双向绑定,通过ViewModel进行交互,Model和ViewModel之间的交互是双向的,因此视图的数据的变化会同时修改数据源,而数据源数据的变化也会立即反应到View上
18.前端优化方案:
①页面优化:a.减少http请求
b.资源合并
c.图片懒加载
d.减少css表达式使用,因为解析规则从右至左
②代码优化:a.减少闭包操作
b.减少DOM的操作
c.避免嵌套循环
d.js封装减少冗余代码