2020这个开头太难了,因为疫情的原因公司解散了,我不得不重新找工作,找了两周多吧,终于找到自己比较满意的工作了,现在总结一下我面试时遇到的一些问题
一、css与html部分
1.css的基本语句构成
a.(若干条)样式
b.样式的属性名
c.样式的属性值
css的好处
a. css将html格式与内容分离,有利于对内容进行统一的设置和修改
b.css样式嫌贵html格式化标记的功能更加丰富和强大
c. 可以说css对于界面美化起到了很大作用
2.xhtml和html的区别
xhtml元素必须被正确的嵌套,必须被关闭,标签名必须用小写,xhtml文档必须要有根元素
3.Doctype的严格模式和混杂模式,如何触发
4.行内元素,块元素,盒模型
行内元素:span、img、a、label、code、input、abbr、em、b、big、cite、i、q、textarea、select、small、sub、sup,strong、
块元素:div、p、h1-h6、form、ul、ol、dl、dt、dd、li、table、tr、td、th、hr
盒模型:content+padding+border+margin(如果画出来会更好)
5.css引入方式有哪些?link和@import的区别
方式:a.行内式(写在dom元素上)
b.嵌入式(同一个页面有一个style标签包裹)
c.外联样式(link)
d.导入式(@impor)
区别:link是在html页面写的,导入式是使用css脚本写的,在页面加载时,link是 先加载好了css文档再显示html页面;而导入式是先加载html显示出来后,再加载
css脚本的效果,所以推荐使用link,不推荐使用
6.css的选择符?哪些属性可以继承,优先级
选择符:1.id选择 器,2.类名选择器,3.标签选择器,4.相邻选择器,5.伪类选择器,6.父子选择器(ul>li),7.后代选择器(li a)8.通配符
继承属性:font-size;font-family,color,text-indent 等字体样式
优先级:!important > 内联 > id > 伪类>class>标签选择器
7.前端页面的构成,作用
html:结构层,超文本标记语言,由html或xhtml之类的标记语言负责创建标签,也就是出现在尖括号里面的单词,对网页内容的语义和含义做了描述,但这些标签不包含任何关于如何显示有关内容的信息
css:表现层,层叠样式表,由css负责创建“如何显示有关内容”
js:行为,客户端脚本语言,内容是对应该如何应多事情做出反应
8.ie6中bug的解决方法
a.png图片的问题,ie6以下版本不支持png图片的格式
b.ie6的双倍边距bug,浮动后本来外边距是10px,但ie6为20px,解决方法是加上display:inline
(ie6这个是真的没有做过,所以在网上找了两个典型的)
9.标签上的title和alt属性的作用
a.title是对图片的描述与进一步说明
b.alt是当图片不在时替代文字
二、h5
1.新的h5文档类型和字符集
<!doctype html> <meta charset="utf-8">
2.嵌入音频
<audio> <source src="音频路径"></source></audio>
3.嵌入视频
<video><source src="视频路径"></source></video>
4.媒体标签
<marquee/> 跑马灯效果
5.h5中canvas元素的作用
canvas用于在网页上绘制图形,可以直接在html上进行图形操作
6.h5的存储类型
localstorage:适用于长期存放
sessionstorage:短期存放
7.h5新增的表单元素
<datalist></datalist>
<keygen></keygen>
<output></output>
8.h5废弃标签
big basefont center
9.h5新增api
canvas svg
10.h5应用程序缓存和浏览器缓存
H5引入了应用程序缓存,意味着WEB应用可进行缓存,可在没有因特网时进行访问
应用程序缓存的优势:
离线缓存:用户可在离线时使用它们
速度:加载速度更快
减少服务器负载:浏览器只从服务器下载更新的或者更改过的资源
实现借助manifest文件
--------------------新增--------------
11.常见的布局,响应式单位
https://blog.csdn.net/zhang6223284/article/details/81909600?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1
这位博主讲的超级详细
12.flex布局的属性
ustify-content:flex-start | flex-end | center | space-between | space-around;
flex-start(默认值):左对齐
flex-end:右对齐
center: 居中
space-between:两端对齐,子元素间隔相等。
space-around:子元素两侧的间隔相等。
三、原生js
1.数据类型
布尔,number,string,null,undefined,object
2.判断不同的数据类型
3.undefind和null区别
null表示"没有对象",即该处不应该有值
(1) 作为函数的参数,表示该函数的参数不是对象。
(2) 作为对象原型链的终点。
undefined表示"缺少值",就是此处应该有一个值,但是还没有定义
(1)变量被声明了,但没有赋值时,就等于undefined。
(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默认返回undefined。
4.闭包,原型,原型链
5.js数组方法
forEach map 循环,sort排序,reverse 倒序,push添加对象,concat连接两个数组,splice,pop等等
6.js数组去重
7.es6新特性
let声明一个变量,const声明一个常量,作用于局部,
模板字符串
解构赋值
展开运算符
箭头函数
8.两个字符串,查重
9.通过递归或条件判断写一个函数重复输出一个字符串
10.'=='和'==='的区别
==:值相等,'2'==2
===:值相等,类型相等 '2'==='2',2===2
四、vue
1.vue的生命周期
beforecreate create beforeMount Mount beforeUpdate Update beforeDestoryed Destoryed
我在b站看的黑马程序员的课,讲的很清楚
2.vue是怎么实现数据双向绑定的
其实这个就是问的mvvm模式,还是在b站看的,如下图
3. v-if和 v-show
v-if是操作dom的删除,创建
v-show是通过display:none控制元素的显示隐藏
4.vuex
vuex这个呢,换个思路就很容易理解了
vuex 主要就是作为一个仓库存储数据的,当一些数据发生变化的时候可以做到页面的及时更新,但是vuex刷新页面之后数据就没有了,适用于商城购物车页面
vuex里面的有state就相当于普通vue页面的data,就是定义一个初始值
mutation:就相当于methods,里面写方法
取值的时候用getters
5.promise,async,await
6.组件传值
7.路由传值