自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 彻底搞懂JavaScript的this指向问题

this 关键字是 JavaScript 中最复杂的机制之一。它是一个很特别的关键字,被自动定义在所有函数的作用域中。但是即使是非常有经验的 JavaScript 开发者也很难说清它到底指向什么。一、为什么要用this?下面我们来解释一下为什么要使用 this: const me = { name: "xiaoming" }; const you = { name: "xiaohua" }; function identify() { return this.name.

2021-06-28 18:32:01 349 2

原创 日志相关级别、优先级及使用方法

一、为什么要使用日志框架?调试: 开发过程中,输出的日志便于记录程序在之前的运行结果,可以方便地知道当前程序的运行状态。错误定位: 项目在运行一段时候后,可能由于数据问题,网络问题,内存问题等出现异常,这时日志可以帮助开发或者运维人员快速定位错误位置,尽快找到解决方案。数据分析: 大数据的兴起,使得大量的日志分析成为可能,日志中蕴含了大量的用户数据,包括点击行为,兴趣偏好等,用户画像对于公司下一步的战略方向有一定指引作用。二、常用日志相关的框架有哪些?1、日志框架及相关优先级

2021-06-23 11:31:37 15668

转载 将图片url转换为base64与file对象

通常,在做图片上传的时候,一般以file对象的形式传递。后端将图片上传服务器之后,当前端再次请求数据,拿到的图片为http开头的url。通过此url一般能满足页面展示的需求,如果需要再将此图片传送给后端,也能满足。但在图片在编辑更换后再次传送,且后端需要file对象接收时,单纯的url将不能满足需求,则需要将url地址转换为file对象。html部分<div style="width:400px;height:400px;background: #ccc;margin: 0 auto;margin

2021-01-25 17:51:39 1782

转载 vue导出word功能

maintenance_word_template(word模板)

2021-01-25 17:32:04 440

原创 导出zip功能

/* eslint-disable */import { saveAs } from 'file-saver'import JSZip from 'jszip'export function export_txt_to_zip(th, jsonData, txtName, zipName) { const zip = new JSZip() const txt_name = txtName || 'file' const zip_name = zipName || 'file' co

2021-01-25 16:52:07 137

原创 vue调用接口导出excel功能及前端导出excel

接口导出excelHTML<el-button class="filter-item customise-primary-btn" style="margin-left: 10px;" type="primary" icon="el-icon-download" @click="downLoadData" :loading="downLoading">导出数据</el-button>JS /** * excelTemplateByDeviceData * excel

2021-01-25 16:49:34 1570

原创 去重的几个方法以及随机数的运用

去重的几个方法: var arr = [2, 3, 4, 4, 5, 2, 3, 9]; var arr2 = arr.filter(function (element, index, self) { return self.indexOf(element) === index; });var arr = [2,3,4,4,5,2,3,6];var arr2 = [];for(var i = 0;i< arr.length;i++){ if(arr2.indexOf

2021-01-22 10:09:22 107

原创 echarts:设置了dataZoom,datazoom的提示文字(左右两端的那个提示文字)隐藏

datazoom里面加一句textStyle:false,就可以了。

2020-11-20 15:16:23 4693 2

转载 javascript的call、callee、caller的理解解析

function test1 () { return 1;}function test2 (arg) { console.log(arg); return arg;}类型不同call属于方法call的使用是为了改变函数内部的环境变量的值,也就是this的指向,使用方式是functionName.call(env,arg…)注意和bind的差别,参数必须逐个列出,不能以数组的形式传入callee和caller都是属于值callee和caller返回的都是值的类型,只不过值都是Fu

2020-11-16 18:51:40 368

转载 javascript中apply、call和bind的区别

在JS中,这三者都是用来改变函数的this对象的指向的,他们有什么样的区别呢。在说区别之前还是先总结一下三者的相似之处:1、都是用来改变函数的this对象的指向的。2、第一个参数都是this要指向的对象。3、都可以利用后续参数传参。那么他们的区别在哪里的,先看一个例子。 var xw = { name : "小王", gender : "男", age :

2020-11-16 18:33:40 148

原创 新闻公告文字横向滚动

主要思路:居中实现方式:获取span文字所占的宽度后,然后将span文字设置margin-left的值,margin-left使用(所在容器的宽度 - span文字的宽度)/ 2 ;margin-left的值 + span文字的宽度 <= 0时表明这个公告已经滚出这个所在容器了;下面图片帮助理解:下面是组件代码:<template> <div style="text-align: center!important;width: 100%;border-radiu

2020-11-15 14:59:00 368

原创 javascript相关知识点梳理

对象的分类:原型prototype理解构造函数理解及执行流程垃圾回收理解对象的两个方法call()和apply理解函数作用域理解this理解

2020-11-15 14:17:13 177

原创 echarts柱状图:指定某根柱子颜色,并显示对应横坐标的xAxis的data文字(其他隐藏)

思路:**指定某根柱子颜色:**使用颜色数组,判断后指定颜色;**显示某根柱子对应横坐标的xAxis的data文字(其他隐藏):**显示所有的xAxis的data文字,通过data的配置,可将需要隐藏的data的文字设置为透明色(transparent),若文字还是不显示,考虑是文字过长,可以设置xAxis.axisLabel.interval = 0数据处理 // 设置所有的颜色都为'#00A1E9',返回colors setAllColor(xData){ return new P

2020-11-15 13:35:42 1588

转载 JS数据结构-Set集合,创建Set,常用Set方法

Set  ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。  很多时候我们把Set叫做 集合,但是,Set可以是集合,集合不一定是Set。  特性:唯一性=>不重复=>能够对数据进行去重操作。  注:集合去重,是全等匹配,===。创建Set  Set 本身是一个构造函数,调用构造函数用来生成 Set 数据结构。  关键词 标识符 = new Set();  例 let i = new Set();    Set 函数可以接受一个数组

2020-06-24 13:48:58 8311

原创 微信小程序中使用open-data显示用户头像修改圆形样式解决

<view class="user-header"> <open-data type="userAvatarUrl"></open-data> </view>.user-header{ overflow: hidden; display: block; width: 80rpx; height: 80rpx; border-radius: 100%;}完美解决。...

2020-06-22 15:02:55 964

原创 微信小程序自定义图标动态显示不同颜色

微信小程序自定义图标动态显示不同颜色该方法不仅仅局限于阿里图标,后台传过来的图标依旧适用,但是后台上传图标的时候需要上传svg格式的图片呢。主要思路是什么呢:后台上传的svg图片,先使用小程序提供的wx.getFileSystemManager().readFile()进行读取该svg图片文件,读取之后的数据是这样式儿的:<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//E

2020-06-18 19:49:59 2612 3

转载 img下面的留白解决(留一点小缝隙)

在做网页的时候经常会出现一个令人困惑的现象。那就是行内元素和块级元素之间会出现“留白”。就是块级元素中明明只有一个行内元素,但行内元素却不会铺满块级元素。像这个例子:“留白”出现的原因  行内元素默认是和父级元素的baseline对齐的,而不是父级元素的bottom。baseline有时候和父级元素bottom有一段距离。解决办法一:设置vertical-align:bottom;&l...

2020-01-14 14:47:43 488

原创 微信小程序未来七天日期处理(日期+星期)

// 处理未来七天的函数 dealTime: function (num) { // num:未来天数 var time = new Date() // 获取当前时间日期 var date = new Date(time.setDate(time.getDate() + num)).getDate() //这里先获取日期,在按需求设置日期,最后获取需要的...

2020-01-13 15:40:12 2472

原创 微信小程序授权问题

// 查看是否授权 getUserInfo() { let _this = this wx.getSetting({ success: (res) => { if (res.authSetting['scope.userInfo']) { wx.getUserInfo({ success: func...

2020-01-13 15:38:06 253

原创 new Date()带有时分秒ios不兼容的问题

let data1 = item.startDatetime let mydata = new Date(item.startDatetime); let newdata = mydata.getTime(); let dateCurrent = data1.replace(/-/g, '/'); let year = new Date(dateCurrent).getF...

2020-01-13 15:36:41 379

原创 小程序图片滤镜效果

① css样式添加该样式,使图片加上灰色“滤镜”效果:filter: grayscale(1) !important;② 你所谓的阴影效果:filter: drop-shadow(2px 2px 3px #999);③ setData数组的某一个下标的值“let exe = `executionTimes[4].executionTime` this....

2020-01-13 15:35:11 1295

原创 微信小程序页面总高度和设备高度比较

getHeight(){ this.setData({ detailsInfoHeight:null, allHeight:null, overHeight:true, },()=>{ if(this.data.detailsInfoHeight == null && this.data.allHeight == null &...

2020-01-13 15:26:45 1944

原创 小程序画布保存图片模糊解决办法

wx.canvasToTempFilePath({ x: 0, y: 0, width: 300, height: 480, destWidth: 300 * wx.getSystemInfoSync().pix...

2019-12-20 17:08:45 1942

原创 ES6新增操作数组的方法

findIndex方法:传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它的下标,终止搜索。idx = members.findIndex(item => item.id == callbackSelectedAccountMemberId)//满足条件返回数组下标,不满足条件返回-1。filter方法let member = members.filter(item...

2019-07-17 18:01:33 512 1

原创 小程序弹出框的穿透问题

如果开发的过程中遇到滑动弹出框时,弹出框下面的内容进行滑动,解决这个问题的最直接的方法就是在页面上添加事件:catchtouchmove="return"

2019-06-24 15:59:38 1563

原创 小程序生成长图(预览,不限高度)+小程序码+小程序码中间logo换成自定义logo

上条博客已经介绍了如何云调用生成小程序码,链接地址:https://blog.csdn.net/mingjuna2010/article/details/92796711这条博客我们来介绍小程序中怎么生成长图,如何预览,并且在长图中绘制小程序码,以及小程序码中间的默认logo换成自定义logo。①首先在页面上准备一个画布,画布的宽度设定,高度不定。代码如下: ...

2019-06-18 18:08:44 4364

原创 小程序码云调用实现方式

①开通云开发、创建云开发环境(环境命名为项目名称拼音即可,示例中football)创建了第一个云开发小程序后,在使用云开发能力之前需要先开通云开发。在开发者工具工具栏左侧,点击 “云开发” 按钮即可打开云控制台、根据提示开通云开发、创建云环境。默认配额下可以创建两个环境,各个环境相互隔离,每个环境都包含独立的数据库实例、存储空间、云函数配置等资源。每个环境都有唯一的环境 ID 标识,初始创建的环...

2019-06-18 17:23:00 2690

原创 小程序页面卡顿解决问题

wxss页面中添加样式:page{ height: 100%; -webkit-overflow-scrolling : touch;}

2019-06-10 13:26:33 16741 1

转载 小程序图片和视频轮播

index.wxml<swiper class="swiper" indicator-dots="true" autoplay="{{flag}}" interval="5000" duration="1000"> <block wx:for="{{movies}}" wx:for-index="index"> &...

2019-05-29 15:54:48 1793

转载 高性能动画设计的一些优化思路总结

原文:https://blog.csdn.net/liangklfang/article/details/51730556问题1:关注JS的垃圾回收对动画性能的影响Javascript没有显式的内存管理,这就意味着你创建了对象但是你没有释放他们,久而久之,浏览器就会去清理这些对象。这时候动画执行就会停止,浏览器会识别那些内存依然在使用,然后释放其它的内存空间。而且这种多余的垃圾都是逐渐被创建,...

2018-11-22 09:42:46 222

原创 vue入门 vue与react和Angular的关系和区别

一、为什么学习vue.jsvue.js兼具angular.js和react的优点,并且剔除了他们的缺点。二、vue.js是什么Vue是一个"MVVM框架(库)",和angular类似,相比angular小巧,比较容易上手Vue是一个构建用户界面点的渐进式框架,与其他重量级框架不同的是,vue采用自底向上增量开发的设计vue的核心库"只关注视图层",并且"非常容易学习",非常容易与其他库或...

2018-11-21 21:19:42 524

转载 ES6中let与var的区别

通过var定义的变量,作用域是整个封闭函数,是全域的 。通过let定义的变量,作用域是在块级或是子块中。for (let i = 0; i &lt; 10; i++) { // ...}console.log(i);// ReferenceError: i is not defined//计数器i只在for循环体内有效,在循环体外引用就会报错。变量提升现象:浏览器在运行代码之前...

2018-11-21 19:00:20 140

原创 js对象和jquery对象相互转换

js对象转化为jquery对象方法:只需要用$()把DOM对象包起来,就能获取一个jquery对象示例:var dom=document.getElementById('dom');//js对象var dom=$(dom);//jquery对象转换后就可以使用jquery的方法了jquery对象转为js对象(两种方法:[index]和get(index))法一:jquery对象是一...

2018-11-17 14:31:35 128

原创 JavaScript的跨域问题

三种方法实现js跨域访问javascript跨域访问是web开发者经常遇到的问题,什么是跨域,一个域上加载的脚本获取或操作另一个域上的文档属性,下面将列出三种实现javascript跨域方法:1.基于iframe实现跨域基于iframe实现的跨域要求两个域具有aa.xx.com,bb.xx.com这种特点,也就是两个页面必须属于一个基础域(例如都是xxx.com,或是xxx.com.cn),...

2018-11-17 13:44:34 130

原创 javascript遍历json对象数据的方法

JSON中,有两种结构:对象和数组,对象是没有length这个属性,而数组结构是有的,下面分别说下这两种结构之间的区别和遍历方式。1.对象一个对象以“{”开始,“}”结束。每个“key”后跟一“:”,“‘key/value’ 对”之间运用 “,”分隔。packJson = {"name":"phpernote", "password":"111"}原生Js遍历json对象的方法myJs...

2018-11-17 10:56:57 1137

原创 JavaScript几种事件绑定的方式

事件绑定的几种方式在Javascript中,事件绑定一共有3种方式:① 行内绑定② 动态绑定③ 事件监听1、行内绑定基本语法:&lt;标签 属性列表 事件=”事件的处理程序” /&gt;例:示例代码:以上代码就是最典型的行内绑定,虽然可以完成我们需要的功能,但是其把结构+样式+行为都绑定在同一个标签中,不利于后期维护。2、动态绑定基本语法:dom对象.事件 = 事件的处...

2018-11-17 10:09:23 1059

转载 Javascript创建对象的几种方法

工厂模式优点:接受参数,可以无数次的调用这个函数,创建Person对象,而每次他都可以返回一个包含三个属性一个方法的对象。缺点:虽然解决了创建多个相似对象的问题,但是没有解决对象识别的问题(即怎么知道一个对象的类型)。构造函数模式JS中可以创建自定义的构造函数,从而定义自定义对象属性和方法。♦ Person()中的代码和createPerson()的不同之处:1、没...

2018-11-17 09:50:28 165

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除