前端面试题
Posted 阿姨压一压~~咦~~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端面试题相关的知识,希望对你有一定的参考价值。
一、
less和sass的区别
Less环境和使用较Sass简单
从功能看,Sass较Less略强大一些 sass有变量和作用域 有函数的概念
Less与Sass处理机制不一样 Less通过客户端处理的,Sass是通过服务端处理
二、
js作用域,js预解析
全局作用域: 最外层函数定义的变量拥有全局作用域,即对任何内部函数来说,都是可以访问的;
局部作用域: 局部作用域一般只在固定的代码片段内可访问到,而对于函数外部是无法访问的,最常见的例如函数内部。在 ES6 之前,只有函数可以划分变量的作用域,所以在函数的外面无法访问函数内的变量
三、
ES6新特性,let,const,var关键字区别
var声明的变量,具有函数级作用域,在所在函数内有效,值可更改,可以变量提升
let声明的变量,具有块级作用域,作用域为该语句所在的代码块,不存在变量提生,值可更改
const声明的常量不能修改
四、
Ajax的实现步骤
1.创建xhr对象
2.调用open函数指定请求方式与url地址
3.调用send函数发起Ajax请求
4.监听onreadystatechange事件 监听xhr对象的请求状态和服务器的响应状态
通过xhr的responseText获取响应的数据
五、
base64图片格式
优点:
base64图片格式 占用内存小 降低了资源服务器的消耗;
网页中使用base64格式的图片时,不用再请求服务器调用图片资源,减少了服务器访问次数。
缺点:base64格式的文本内容较多,存储在数据库中增大了数据库服务器的压力
base64无法缓存
六、
路由,路由守卫
三个参数(to from next)
to是要跳转到的路由的信息
from从哪里跳转的路由
next()会让路由正常跳转 next(false)会阻止跳转 不调用next页面会留在原地
next(地址)跳转到对应的路由
七、
http和https区别
1、HTTPS 协议需要到 CA (Certificate Authority,证书颁发机构)申请证书,一般免费证书较少,因而需要一定费用。(以前网易官网是 HTTP,而网易邮箱是 HTTPS 。)
2、HTTP 是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的 SSL 加密传输协议
3、HTTP 和 HTTPS 使用的是完全不同的连接方式,用的端口也不一样,前者是 80,后者是 443
4、HTTP 的连接很简单,是无状态的。HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。
八、
介绍下原型链(解决的是继承问题吗)
javascript 原型: 每个对象都会在其内部初始化一个属性,就是 prototype(原型)原型链:当我们访问一个对象的属性时,如果这个对象内部不存在这个属性,那么他就会去prototype 里找这个属性,这个 prototype 又会有自己的 prototype,于是就这样一直找下去,也就是我们平时所说的原型链的概念特点:JavaScript 对象是通过引用来传递的,我们创建的每个新对象实体中并没有一份属于自己的原型副本。当我们修改原型时,与之相关的对象也会继承这一改变
九、
节流防抖
节流就是在一个触发发起请求的事件时不会立刻发起请求,会设置一个定时器等到,定时器时间到后再发起请求,如果在这期间又发起一次请求则会把前一次的请求事件销毁,去发起新的请求
防抖就是在一个事件结束前又发起了新的请求,则请求不会发出,会等到上一个事件执行完毕后再去发起请求
十、
什么是事件冒泡,怎样阻止冒泡
发生点击事件时,事件会从目标元素上开始触发,向外传播,一直到根元素停止。
事件冒泡就是父元素上面绑定事件,当点击子元素时会触发父元素的事件,
event.stopPropagation();
.return false;
event.preventDefault();
以上是关于前端面试题的主要内容,如果未能解决你的问题,请参考以下文章
面试题系列|前端面试题前端高频面试题总结(2021年最新版)