jquery都有哪些的优点
他拥有着轻量级
压缩大小保持在30KB左右
强大的选择器
出色的DOM封装
出色的浏览器兼容
简单易学
页面性能优化方法有哪些?
1、懒加载
2、减少http请求
3、使用浏览器缓存
4、使用webpack、gulp进行压缩
怎么理解promise
是为异步编程的一种解决方案。一旦开始就无法停止
他一共有三种状态:进行中 peading 成功 resolved 失败 rejected。
懒加载原理?
懒加载就是现在给他一个默认的图片,当他加载出来的时候
在打开从数据里获取到真正的图片,来达到懒加载的效果
原生ajax的步骤
1.创建一个实例化对象
2.监听状态,在里面有一个if判断,当readystate==4时,表示解析完毕,并且当state==200时,表示请求成功
3. 在使用open建立连接,第一个参数就是请求方式get或者post,第二个参数就是url地址,第三个参数就是true或者false来表示
4.使用send发送请求
AMD和CMD规范区别?
AMD是提前执行,用户体验好
CMD是延迟执行,所以性能好
同步和异步的区别?
同步就是在所有的操作都完成之后,在返回给用户,这样体验度不好
异步他不需要等所有操作都完成,先去响应请求的数据,这样用户体验好
什么样的网站适合作响应式?
页面比较小,界面简单,清晰看着容易懂,类似官网这种网站适合做响应式布局。
flex布局是如何理解的?
flex布局又名为弹性布局,他主要会根据屏幕的大小自动调整高度和宽度
不管屏幕是多大,或者多么的小,都不会出现变形,也不会溢出
v-show与v-if的区别,使用场景
v-if 会判断条件是否成立,如果成立则渲染,如果不成立直接不渲染
v-show是在任何条件下都被编译,然后被缓存,而且DOM元素会保留
get和post区别是什么?
一个是提交数据,另一个是获取数据,get没有post安全
nodejs了解吗?
它是js的运行环境,可以让js脱离浏览器运行。
移动端的适配怎么做
使用rem布局或者用弹性盒方式来达成响应式效果
谈谈你对组件之间通讯的理解?
父传子就是在父组件里面自定义个一个属性,在用子组件里面用props接收
子传父就是在子组件里面用$emit来触发,在父组件里面用$on来接收
非父子就是必须要有公共的实例,才能使用 $emit 获取 $on 的数据参数,实现组件通信
http和https的区别?
https协议需要申请证书,免费的相对来说比较少,一般都是收费的
http是超文本传输协议,信息是明文传输而https是具有安全性的加密传输协议
http端口是80,https端口是443
http连接简单而https是进行加密传输需要身份认证相对来说更安全一些
mvvm是什么
m数据模型v视图vm将数据模型和视图连接到一起的桥梁
vue数据双向绑定的实现原理
vue的双向数据就是依靠object。defineproperty()这个方法中获取属性值get和设置属性值set
说出至少4种vue当中的指令和它的用法
v-model:用作双向数据绑定
v-for:用于循环数据
v-show:用于像是隐藏
v-if:也是用于显示隐藏
v-on:添加事件
v-bind:绑定属性
v-once: 绑定一次事件
1.如何解决跨域问题?
第一种是设置一个header 头
第二种是前后端配合,用jsonp来返回数据
第三种是创建一个公共的数据库然后请求数据
2.HTTP 状态码都有哪些?
200-服务器成功返回页面
300-重定向错误
302-重定向
304-缓存
400-语法错误导致
401-请求需要用户认证
404-指定的URL在服务器找不到
500-服务器遇到意外错误
503-服务器过载,无法完成请求
3.如何实现异步编程,有哪些方式?
1、回调函数
2、事件监听
3、发布/订阅
4、promise对象
4.数组排序有哪些方式?
冒泡排序 选择排序 快速排序 插入排序
1.如何理解bootstrap中栅格化布局?
它就是通过一系列的行(row)与列(column)的组合创建页面布局,同样都是可以将页面分为12份,不同的bootstrap的栅格系统会
根据设备屏幕的大小而改变html中的份数。
2.用css如何实现左侧宽度固定,右侧宽度自适应?
可以使用弹性布局,盒左侧给他固定的宽度,右侧让他自适应
3.Null和undefined的区别?
undefined表示此处应该有一个值,但是还没有定义。
null表示没有对象,所以不会有值。
4.前端页面有哪三层构成,分别是什么?作用是什么?
结构层:使用html的各种标签,来写网页,但是写出来的网页很乱
表示层:css样式,我们可以用css样式来修改我们的页面,这样可以使他变得很好看
行为层:通过js来实现一些功能,逻辑性的问题