摘要:随机数参数中设置等。有哪几种导航钩子三种,第一种是全局导航钩子,作用跳转前进行判断拦截。在阶段,实例的数据对象有了,还没有。载入前后在阶段,实例的和都初始化了,但还是挂载之前为虚拟的节点,还未替换。更新前后当变化时,会触发和方法。
最近面试了 很多1-2年的前端,网上手机了一些 问题和答案,发出来 希望能帮助到大家~
CSS篇
IOS手机浏览器字体齿轮
修改-webkit-font-smoothing属性
结果是:-webkit-font-smoothing: none: 无抗锯齿-webkit-font-smoothing: antialiased | subpixel-antialiased | default: 灰度平滑
怎么让Chrome支持小于12px 的文字?
我们的做法是:
针对谷歌浏览器内核,加webkit前缀,用transform:scale()这个属性进行缩放! p span {font-size:10px;-webkit-transform:scale(0.8);display:block;}
CSS预处理器(Sass/Less/Postcss)
CSS预处理器的原理: 是将类 CSS 语言通过 Webpack 编译 转成浏览器可读的真正 CSS。
在这层编译之上,便可以赋予 CSS 更多更强大的功能,常用功能:
嵌套 变量 循环语句 条件语句 自动前缀 单位转换 mixin复用
JS
网站js和css如何压缩?有哪些方法?
概念性知识点:
http请求问题,HTTP请求信息由那3部分组成?
请求方法URI协议/版本 (例如:GET/haorooms.jspHTTP/1.1)
请求头(Request Header)(例如:Accept:image/gif.image/jpeg./ Accept-Language:zh-cn Connection:Keep-Alive Host:localhost等等)
请求正文
前端性能优化问题,你是如何处理前端性能问题的?
www.haorooms.com/post/web_xn… 及 前端性能优化补充篇
写出最简单的去重方式
es6的new Set()方式
let array=[0,3,4,5,3,4,7,8,2,2,5,4,6,7,8,0,2,0,90];[...new Set(array)]
es5的Array filter()
[1,3,4,5,1,2,3,3,4,8,90,3,0,5,4,0].filter(function(elem,index,Array){ return index === Array.indexOf(elem);})
谷歌浏览器运行下面代码,并解释!
[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) })
运行上面代码之后,会发现HTML层都被使用不同的颜色添加了一个高亮的边框。为什么会这样呢?
如何处理缓存?如何清除缓存。
ajax随机数、ajax参数、meta中设置等。可以看下我写的 js清除浏览器缓存的几种方法
Websocket
Websocket 是一个 持久化的协议, 基于 http , 服务端可以 主动 push
兼容:
FLASH Socket
长轮询: 定时发送 ajax
long poll: 发送 --> 有消息时再 response
new WebSocket(url)
ws.onerror = fn ws.onclose = fn ws.onopen = fn ws.onmessage = fn ws.send()
跨域
JSONP: 利用标签不受跨域限制的特点,缺点是只能支持 get 请求
设置 CORS: Access-Control-Allow-Origin:*
postMessage
框架:Vue
vue-router如何做历史返回提示?
vue-router如何做用户登录权限等?
vue组件通信
vue服务器渲染
vue性能优化
active-class是哪个组件的属性?
vue-router模块的router-link组件。
vue-router有哪几种导航钩子?
三种, 第一种:是全局导航钩子:router.beforeEach(to,from,next),作用:跳转前进行判断拦截。 第二种:组件内的钩子 第三种:多带带路由独享组件
scss是什么?在vue.cli中的安装使用步骤是?有哪几大特性?css的预编译。
使用步骤:
第一步:用npm 下三个loader(sass-loader、css-loader、node-sass)
第二步:在build目录找到webpack.base.config.js,在那个extends属性中加一个拓展.scss
第三步:还是在同一个文件,配置一个module属性
第四步:然后在组件的style标签加上lang属性 ,例如:lang=”scss”
有哪几大特性:
可以用变量,例如($变量名称=值)
可以用混合器,例如()
可以嵌套
导航钩子有哪些?它们有哪些参数?
导航钩子有:
全局钩子和组件内独享的钩子。
beforeRouteEnter、afterEnter、beforeRouterUpdate、beforeRouteLeave
参数: 有to(去的那个路由)、from(离开的路由)、next(一定要用这个函数才能去到下一个路由,如果不用就拦截)最常用就这几种
Vue的双向数据绑定原理是什么?
vue.js 是采用数据劫持 结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。
请详细说下你对vue生命周期的理解?
总共分为8个阶段 创建前/后,载入前/后,更新前/后,销毁前/后
创建前/后:
在beforeCreated阶段,vue实例的挂载元素 $el 和数据对象data都为undefined,还未初始化。 在created阶段,vue实例的数据对象data有了,$el还没有。
载入前/后: 在beforeMount阶段,vue实例的$el和data都初始化了,但还是挂载之前为虚拟的dom节点,data.message还未替换。在mounted阶段,vue实例挂载完成,data.message成功渲染。
更新前/后: 当data变化时,会触发beforeUpdate和updated方法。
销毁前/后: 在执行destroy方法后,对data的改变不会再触发周期函数,说明此时vue实例已经解除了事件监听以及和dom的绑定,但是dom结构依然存在
请说出vue.cli项目中src目录每个文件夹和文件的用法?
assets文件夹是放静态资源;
components是放组件;
router是定义路由相关的配置;
view视图;
app.vue是一个应用主组件;
main.js是入口文件
vue.cli中怎样使用自定义的组件?有遇到过哪些问题吗?
第一步:在components目录新建你的组件文件(smithButton.vue),script一定要 export default {
第二步:在需要用的页面(组件)中导入:import smithButton from "../components/smithButton.vue"
第三步:注入到vue的子组件的components属性上面,components:{smithButton}
第四步:在template视图view中使用,
自动化测试相关、mock数据相关、 webpack相关
这个考察你对webpack的理解是使用程度。
例如可能考察如下知识点:
hash(contenthash, chunkhash)
多页面配置
发布上线流程
如何加快打包速度,减少打包体积
和其他工具的区别(grunt,glup,rollup,parcel,Browserify)
如果能看到这里的朋友都很不错~
有get到帮助的,可以 圈一下~ 谢谢!
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/6662.html
摘要:上节我们讲了同源策略,这节我们讲讲如何跨域。当这些从的脚本执行出错,因为违背了同源策略为了保证用户信息不被泄露,错误信息不会显示出来,取而代之只会返回一个。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中心思想,我们开课啦(每...
摘要:前端最基础的就是。的原理浏览器发送请求,服务器给出响应。保持之前的界面不变化。的核心创建一个对象,用于发起请求设置为请求,请求发送请求。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中心思想,我们开课啦(每周四)。 ajax ...
摘要:前端最基础的就是。的原理浏览器发送请求,服务器给出响应。保持之前的界面不变化。的核心创建一个对象,用于发起请求设置为请求,请求发送请求。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中心思想,我们开课啦(每周四)。 ajax ...
摘要:微信小程序课程,面向所有具备前端基础知识的同学官网访问官网更快阅读全部免费分享课程出品全网最新微信小程序基于最新版开发者工具之初中级培训教程分享。 ?? 微信小程序课程,面向所有具备前端基础知识的同学 ?? iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:《iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教...
阅读 1771·2021-11-15 11:37
阅读 3043·2021-11-04 16:05
阅读 1910·2021-10-27 14:18
阅读 2741·2021-08-12 13:30
阅读 2485·2019-08-29 14:18
阅读 2076·2019-08-29 13:07
阅读 2004·2019-08-27 10:54
阅读 2713·2019-08-26 12:15