
前端
CyberPunk66
这个作者很懒,什么都没留下…
展开
-
如何优化代码中的多层if嵌套
前言日常开发中经常要针对不同业务场景作出不同行为与判断,在最早接触的时候普遍都是使用如下代码进行业务区分:if(res.data.code===0){//do something}else if(res.data.code===1002){//do something}else if(res.data.code===1004){//do something}else{//do s...原创 2020-02-12 11:28:55 · 5220 阅读 · 0 评论 -
获取设备系统浏览器信息
function getOSAndBrowser() { var os = navigator.platform; var userAgent = navigator.userAgent; var info = ""; var tempArray = ""; if (os.indexOf("Win") > -1) { if (userAgent.indexOf("W...原创 2020-01-15 17:09:32 · 345 阅读 · 0 评论 -
前端处理java后端使用流文件传输方式显示图片
业务场景摈弃第三方图片存储,后端使用java语言开发,图片相关操作使用ftp的流文件传输方式,前端无法使用传统显示图片的方式来显示,需要对返回数据流进行编码处理;整体思路定义请求返回的数据流为二进制类型——对返回数据进行Uint8Array编码——使用String.fromCharCode()方法将Uint8编码的数组元素进行字符转化——使用数组的reduce方法累加数组元素拼凑成字符长串—...原创 2020-01-15 13:39:18 · 2873 阅读 · 1 评论 -
ES6实现操作两个数组元素并返回新数组
ES5时的做法假设现有array_one与array_two两个数组const array_one=[0,1,2,3,4,5,6]const array_two=[0,3,6,7,8,9]现在需要对两个数组进行元素比较并返回新的数组,以往都是这么做的//返回相同元素var array_new=[];for(var i=0;i<array_one.length;i++){//...原创 2020-01-03 15:12:56 · 2319 阅读 · 0 评论 -
vue无法检测数组变动的原因
前言在vue 2.x版本中,vue无法对数组的增加、删除等操作进行检测并派发视图更新。同理,对于已创建对象实例的属性增加、删除操作也会无法达到监听的目的,虽然对于诸如此类问题都有如$set、数组重构、主动通知vue更新等相应的解决办法。但是对于其产生原理,则需要从vue的响应式实现方式谈起。响应式原理在vue 2.x版本中,针对每一个对象的属性,都是采用的Object.definePrope...原创 2019-12-31 16:12:50 · 910 阅读 · 1 评论 -
使用electron打包vue项目成为应用程序流程及常见问题解答
为什么选择electron?版本兼容性当项目主体针对的医院、政府等单位,一般还在使用相对老旧版本的系统与浏览器,无法对vue框架、ES6等新特性进行支持时,使用electron将web程序打包成exe应用程序即可解决大部分的版本兼容性问题。除非摒弃现有技术栈转而回去写原生的代码,否则你大部分掌握的新语法、新特性与新技术都将得不到应用。混合化开发类似使用RN或flutter,采用跨平台开发而...原创 2019-12-25 14:28:56 · 937 阅读 · 0 评论 -
纯css实现电池波浪充电特效
实现原理:主要利用css的transform变换与animation属性,通过使用translate(x,y) 实现元素位移、rotate(deg) 实现元素旋转、@keyframes实现关键帧动画。css知识点附于本文底部。展现效果HTML部分:<div class="container"> <div class="header"></div>...原创 2019-12-25 11:32:10 · 2460 阅读 · 2 评论 -
2019年中级前端自检清单
Javascript:基本数据类型,基本类型和引用类型之间的差异;熟练运用es6提供的语法规范;熟悉基本数据类型对应的操作方法,特别是数组和对象;理解javascript基于原型编程的原理(这回事),理解原型,原型链;熟悉es5和es6实现继承的方式;理解作用域和执行上下文,能区分call,apply,bind三者之间的区别;了解闭包,能说出在js中对于闭包的定义(闭包是什么东西);...原创 2019-12-03 09:32:38 · 314 阅读 · 0 评论