最后
全网独播-价值千万金融项目前端架构实战
从两道网易面试题-分析JavaScript底层机制
RESTful架构在Nodejs下的最佳实践
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
一线互联网企业如何初始化项目-做一个自己的vue-cli
思维无价,看我用Nodejs实现MVC
代码优雅的秘诀-用观察者模式深度解耦模块
前端高级实战,如何封装属于自己的JS库
VUE组件库级组件封装-高复用弹窗组件
notMerge:可选,是否不跟之前设置的option进行合并,默认为false,即合并。
lazyUpdate:可选,在设置完option后是否不立即更新图表,默认为false,即立即更新。
silent:可选,阻止调用 setOption 时抛出事件,默认为false,即抛出事件。
float 型数据相加后结果有误差
项目:《os数据统计》
问题:float型数据相加后结果会有一些误差
分析:因为js计算精度的问题,浮点型数据相加减都会有误差
解决办法:定义一个变量,存放每次相加产生的误差,在上一次结果和这一项相加之前先减去上次产生的误差,再相加就是没有误差的结果,之后再将此次相加产生的误差赋值给c
代码:
function arrSum(list) {
var len = list.length
var res = 0.0
// 定义c为浮点数相加产生的误差
var c = 0.0
for (var i = 0; i < len; i++) {
// 减去上一次产生的误差
var y = list[i] - c
var t = res + y
// 此次相加后产生的误差
c = (t - res) -y
res = t
}
return res
}
切换选项卡后需要重新加载 echarts
项目:《os数据统计》
问题:切换选项卡后,只有默认显示的那个选项卡页面有图表,其他切换后都没有
解决办法: 切换选项卡后需要重新加载echarts
代码:
$(‘#tab input’).click(function() {
var index = $(“#tab input”).index(this)
$(this).addClass(“active obtn btn-lg”).siblings().removeClass(“active obtn btn-lg”)
$(“.tab-content>div”).eq(index).addClass(“select”).siblings().removeClass(“select”)
pubChart.resize()
areaChart.resize()
overYearsChart.resize()
})
城市区域等数据是 ajax 来的,所以给这些数据写事件要放到渲染函数中,渲染完成后再执行,因为异步
项目:《os数据统计》
问题:为页面ajax请求回来渲染的数据元素写事件不起作用,sources里查看元素是undefined
分析:页面数据是ajax异步请求回来的,所以在执行事件的时候还没有成功渲染元素
解决办法: 把相应事件写在渲染函数中
点击子元素会触发父元素事件,为子元素写阻止冒泡方法
项目:《portal页》
场景:为弹出遮罩层写事件,当点击遮罩层空白处时遮罩层消失,但点击遮罩层上的表单不消失
问题:当点击遮罩层上的表单时,遮罩层也会消失,
分析:这是因为子元素会为遮罩层写消失事件时会触发冒泡事件,所以要为子元素写阻止冒泡方法
解决方法:
stopBubble(e) {
e.stopPropagation(); //阻止冒泡
},
alert()一个拼接字符串结果是 NaN
项目:《portal页》
问题:alert一个拼接字符串 alert(‘请输入正确的手机号或带区号的电话号码!区号和电话号码之间可无连接符或用’-‘连接’) 结果是NaN
分析:alert内外层字符串与内层字符串同使用单引号引用,导致js从’-‘处解析,将’-‘前边的视为一个字符,减号后边的视为一个字符,将’-'视为减号,所以结果才会是NaN
解决办法:内层字符串与外层字符串不要相同
alert(“请输入正确的手机号或带区号的电话号码!区号和电话号码之间可无连接符或用’-'连接”)
jquery寻找父元素及父级元素
项目:《os数据统计》
问题:使用parent寻找元素的非直接父元素找不到
分析:parent是寻找元素的直接父元素,寻找元素的非直接父元素使用Parents
jquery为追加元素添加事件
项目:《os数据统计》
问题:为append方法添加进去的元素写事件,有的时候没有响应,有的时候只响应一次
分析:jquery动态添加的元素要使用on进行绑定,但监听的时候不能监听动态的,要监听静态元素(动态元素的父元素,body等)
解决办法:
$(‘body’).on(‘click’, element, function() {
})
设置单元格宽度不起作用
ES6
-
列举常用的ES6特性:
-
箭头函数需要注意哪些地方?
-
let、const、var
-
拓展:var方式定义的变量有什么样的bug?
-
Set数据结构
-
拓展:数组去重的方法
-
箭头函数this的指向。
-
手写ES6 class继承。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
微信小程序
-
简单描述一下微信小程序的相关文件类型?
-
你是怎么封装微信小程序的数据请求?
-
有哪些参数传值的方法?
-
你使用过哪些方法,来提高微信小程序的应用速度?
-
小程序和原生App哪个好?
-
简述微信小程序原理?
-
分析微信小程序的优劣势
-
怎么解决小程序的异步请求问题?
其他知识点面试
-
webpack的原理
-
webpack的loader和plugin的区别?
-
怎么使用webpack对项目进行优化?
-
防抖、节流
-
浏览器的缓存机制
-
描述一下二叉树, 并说明二叉树的几种遍历方式?
-
项目类问题
-
笔试编程题:
最后
技术栈比较搭,基本用过的东西都是一模一样的。快手终面喜欢问智力题,校招也是终面问智力题,大家要准备一下一些经典智力题。如果排列组合、概率论这些基础忘了,建议回去补一下。