自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 渐变环形进度条

【代码】渐变环形进度条。

2024-03-11 16:10:11 219

原创 ios webview首次打开h5页面白屏时间过长问题

在index.html页面。

2024-01-02 11:22:10 626

原创 关于docker的学习

类似于类与实例关系中的类,也类似于系统镜像的概念,对于前端而言,镜像就是包含了代码运行所需要的一切产物、依赖、配置等。这样的话,可以保证每次程序运行的环境一致。构建镜像,一般都是通过一个文本文件来生成。这个文件就是 Dockerfile,文件内容就是一系列的指令集合。举例来说,对于一个简单的前端应用来说,首先需要安装 NodeJS 作为运行环境,其次则是需要安装依赖,最后需要通过npm run build这样的命令来构建应用产物。这个过程在 Dockerfile 中就是一系列的指令集合。

2023-10-08 16:25:30 235

原创 vue监听页面滑动方向

<template> <div id="app" @touchstart="touchStart" @touchmove="touchMove" @touchend="touchEnd"> <keep-alive include="Home"> <router-view /> </keep-alive> </div></template><script>export default {

2023-04-10 15:08:35 267

原创 处理 ios端 输入框拉起键盘页面上移的问题

解决 H5 IOS input 聚焦时,页面整个被推上去了,键盘收起页面未下移 BUG

2022-09-26 14:58:48 2380

原创 解决element弹出多个message提示时消息框重叠的问题

setTimeout(() => { this.$message.error("XXXXXXXXX!");}, 10);

2021-11-24 14:56:16 835

原创 vue-cli4版本安装element报错

解决方案:1、先卸载原先的版本npm uninstall -g @vue/cli2、安装指定版本npm install -g @vue/cli@3.0.4原因?element官网是这么说的:官网上的实例对象是vue3.0版本创建的 Vue 对象而最新版本的vue是4.5.6,创建的实例对象是createApp实例对象不一致,当然引入不进去了...

2021-10-29 17:30:22 273

原创 js监听复制增加相加的东西

/** 监听copy事件 */ document.addEventListener("copy",function(e){ //取消默认事件,才能修改复制的值 e.preventDefault(); //复制的内容 var copyTxt = `${window.getSelection(0).toString()}\n————————————————\n别偷着转载的我文章啊,小心律师函[/手动狗头]`; if(e.clipboardDat..

2021-09-03 16:16:04 261

原创 二叉树的三种遍历

1、二叉树的前序遍历:按照根节点->左子树->右子树的顺序访问二叉树var preorderTraversal = function(root) { var newObj = []; function traversal(root){ if(root!==null){ newObj.push(root.val); traversal(root.left); traversal(root.r

2021-03-17 18:53:50 154

原创 leetcode:面试题 01.08. 零矩阵

解题方案:var setZeroes = function(matrix) { let rows = new Set(), cols = new Set(); // 用set对象在存储,保证存储的唯一值 for (let row = 0; row < matrix.length; row++) { for (let col = 0; col < matrix[row].length; col++) { if (matrix[row][

2021-01-07 16:38:33 150

原创 leetcode:830. 较大分组的位置

解题方案:var largeGroupPositions = function(s) { var start=0,end=0; // 存储相同字符的始末位置 var arr =[]; for(let i=1;i<s.length;i++){ if(s[i]==s[i-1]){ //如果和前一个字符相同 end=i; // 更新结束位置 if(i==s.length-1&&i-start&g

2021-01-05 16:54:24 115

原创 leetcode:423. 从英文中重建数字

解题方案:var originalDigits = function(s) { let match = (char) => (s.match(new RegExp(char,'g')) || []).length ; let n0 = match('z'); let n2 = match('w'); let n8 = match('g'); let n6 = match('x'); let n3 = match('t') - n2 - n8;

2021-01-05 16:44:58 233

原创 leetcode:509. 斐波那契数

解题方案:他来了他来了 他带着最蠢的递归走来了var fib = function(n) { if(n==0) return 0 if(n==1) return 1 return fib(n-1)+fib(n-2)};

2021-01-05 16:19:07 116

原创 leetcode:49. 字母异位词分组

解题方案:var groupAnagrams = function(strs) { var arr = {}; for(let i=0;i<strs.length;i++){ let newStr = strs[i].split('').sort(function(a,b){ return a.charCodeAt() - b.charCodeAt() }).join(''); // 利用字符的ASCII码,将字符串进行排序,

2020-12-14 14:34:44 97

原创 leetcode:34在排序数组中查找元素的第一个和最后一个位置

解题方案:他来了,他带着最蠢的代码走来了var searchRange = function(nums, target) { if(nums.length==0){ // 特殊情况,数组为空 return [-1,-1]; } if(nums.length==1){ // 特殊情况,数组只有一项 if(nums[0]==target){ return [0,0]; }else{ re

2020-12-11 16:36:03 90

原创 leetcode:6. Z 字形变换

解题方案:var convert = function(s, numRows) { if(numRows==1||numRows>=s.length){ return s; } //1 let arr = new Array(numRows).fill('');//2 let down = true;//3 let index = 0;//4 for(let i=0;i<s.length;i++){ arr[in

2020-12-09 17:40:49 114

原创 leetcode:面试题 16.24. 数对和

解题方案:利用双指针,var pairSums = function(nums, target) { if(nums.length<2){ // 清除特殊情况,null 空数组等 return []; } nums.sort(function(a,b){ // 对数组进行排序 return a-b; }) var left=0,right=nums.length-1; var newArr=[]; whil

2020-12-07 15:12:10 143

原创 leetcode 面试题 16.26. 计算器

解题方案 : var calculate = function(s) { let str = s.replace(/\s/g,""); //去掉字符串中的空格,方便处理 let total = 0; let newArr = []; let string = ''; for(let i=0;i<str.length;i++){ // 处理字符串,把符号和数字分开形成数组

2020-12-03 15:41:43 149

原创 leetcode 22题:括号生成

解题方案:var generateParenthesis = function(n) { let res = []; function getArr(str,left,right){ if(str.length>=2*n){ res.push(str); return res; } if(left<n){ getArr(str+'(',left+1,right

2020-11-17 12:22:28 102

原创 leetcode 16题:最接近的三数之和

解题方案:var threeSumClosest = function(nums, target) { nums.sort(function(a,b){ return a-b; }); var minNum = nums[0]+nums[1]+nums[2]; for(let i=0;i<nums.length-2;i++){ let j=i+1; let z=nums.length-1; while(j

2020-11-13 17:25:59 161

原创 leetcode 4题: 寻找两个正序数组的中位数

解题方案:var findMedianSortedArrays = function(nums1, nums2) { var newArr=[]; // 首先把一些特殊情况排除掉:两个数字长度为0或者1的情况 if(nums1.length==1&&nums2.length==1){ return (nums1[0]+nums2[0])/2 } if(nums1.length==0&&nums2.length==0){

2020-11-13 16:07:16 111

原创 leetcode 922题: 按奇偶排序数组 II

解题方案: 利用新数组存储数据,双循环解决var sortArrayByParityII = function(A) { var len = A.length; var newArr = []; let j=0; for(let i=0;i<len;i++){ if(A[i]%2==0){ newArr[j]=A[i]; j=j+2; } } j=1; for(le

2020-11-12 11:20:48 96

原创 leetcode 20题:有效的括号

解题方案:var isValid = function(s) { if(s.length%2==1){ // 如果字符串的长度是奇数,那么不可能是有效的括号了 return false; } let arr=[]; // 暂时存储括号 let arr1=['(','[','{']; let arr2={ '(':')', '[':']', '{':'}', }; for(let i

2020-11-12 11:12:55 113

原创 leetcode 15题:三数之和,用时击败了5%,内存击败了5% 哈哈哈哈哈哈哈

解题方案:用时击败了5%,内存击败了5% 哈哈哈哈哈哈哈 var threeSum = function(nums) { var arr = new Set();// 用来给二维数组去重 nums.sort(function(a,b){return a-b}); // 给原数组排序 for(let i=0;i<nums.length-2;i++){ if(nums[i]>0) break; // 当最小项已经>0时,就可以跳出循环

2020-11-09 16:56:46 185

原创 leetcode 937题:最接近原点的 K 个点

解题方案:var kClosest = function(points, K) { var newArr = [], result=[]; points.map(function(item,index){ newArr.push({ index: index, area: Math.pow(Math.abs(points[index][0]),2)+Math.pow(Math.abs(points[index][1]),2)

2020-11-09 10:42:28 121

原创 leetcode1356题:根据数字二进制下 1 的数目排序

解题方案:var sortByBits = function(arr) { var getOneLen = function(str){ return str.split('1').length-1 }; var newArr = []; arr.map(function(item,index){ newArr.push({key:item,value: item.toString(2)}) }) newArr.sort(fu

2020-11-06 13:23:29 99

原创 leetcode35题:搜索插入位置

1、利用循环暴力搜索:解题方案:var searchInsert = function(nums, target) { for(let i=0;i<nums.length;i++){ if(nums[i]>=[target]){ return i } } return nums.length};2、利用二分查找算法:解题方案:var searchInsert = function(nums, targe

2020-11-05 18:35:30 138

原创 leetcode326:3的幂,342题:4的幂

解题方案:笨递归var isPowerOfThree = function(n) { if(n==1){ return true; } if(n<1){ return false } var n = n/3; return isPowerOfThree(n)};解题思路:用传入的整数一直除以3,知道结果小于等于1,等于1就是3的幂,小于1就不是;...

2020-11-03 17:54:25 100

原创 leetcode349题:两个数组的交集

解题方案:var intersection = function(nums1, nums2) { let arr = []; for(let i=0;i<nums1.length;i++){ if(arr.indexOf(nums1[i])==-1){ if(nums2.indexOf(nums1[i])>=0){ arr.push(nums1[i]) } }

2020-11-03 17:13:11 72

原创 leetcode941题:有效的山脉数组

解题方案:var validMountainArray = function(A) { // 处理特殊情况,数组长度小于2 或者从一开始就下降的排除 if(A.length<3||A[0]>A[1]){ return false } var max = 0; var newArr = []; for(let i=0;i<A.length-1;i++){ if(A[i]==A[i+1]){

2020-11-03 11:25:51 92

原创 leetcode11题:盛最多水的容器

1、暴力解法: var maxArea = function(height) { let max = 0; for(let i=0;i<height.length;i++){ for(let j=height.length-1;j>i;j--){ let area = height[i]>height[j]?height[j]*(j-i):height[i]*(j-i)

2020-10-30 11:31:31 154

原创 leetcode463题:岛屿的周长

解题方案:var islandPerimeter = function(grid) { let num = 0; let border = 0; for(let i=0;i<grid.length;i++){ var newARR = grid[i]; for(let j=0;j<newARR.length;j++){ if(newARR[j]===1){ num++;

2020-10-30 10:47:40 149

原创 leetcode129题求根到叶子节点数字之和

解题方案:var sumNumbers = function(root) { var num = 0; function addNum(node,num){ if(node==null){ return 0; } var newNum = parseInt(num +'' + node.val); if(node.left==null&&node.right==null){

2020-10-29 12:06:47 150

原创 leetcode3题:无重复字符的最长子串

解题方案:var lengthOfLongestSubstring = function(s) { const newArr = s.split(''); var arr=[],maxLen=0; for(let i=0;i<newArr.length;i++){ var index = arr.indexOf(newArr[i]); arr.push(newArr[i]); if(index==-1){

2020-10-28 16:21:31 104

原创 leetcode1207题:独一无二的出现次数

解题方案:var uniqueOccurrences = function(arr) { const newMap = new Map(); for(let i=0;i<arr.length;i++){ if(newMap.has(arr[i])){ newMap.set(arr[i],newMap.get(arr[i])+1); }else{ newMap.set(arr[i],1);

2020-10-28 15:25:24 350

原创 VUE监听对象数组中每一个对象属性的改变

在watch中监听:这个数组 'weekTimeArray': { // 监听的对象数组 handler(newValue, oldValue) { // 进行你的操作     },     deep: true }

2020-09-25 20:01:55 4189

原创 js兼容安卓和IOS的复制文本到剪切板

js兼容安卓和IOS的复制文本到剪切板 var input = document.createElement("input"); input.value = '13552515549'; document.body.appendChild(input); input.select(); input.setSelectionRange(0, input.value.length), docu

2020-09-25 19:56:35 403 2

原创 小程序canvas 绘制海报 保存到本地

wxml文件:<view class='poste_box' id='canvas-container' style="width:1500px"> <canvas canvas-id="myCanvas" style="width:1500px;height:2096px;" /></view><view class='wrapper_fuc'> <button style='background-color:#fff;' clas

2020-07-07 12:22:54 535

原创 根据年月周获取 当周的日期

在工作中碰到了一个需求,根据用户选择的年月以及当月的第几周,输出这周的开始日期与结束日期,在网上搜了一下,发现大家的第一周一般都是从第一个周一开始计算的,与我们从本月一号开始算第一周的需求不太一致,于是自己写了一个方法: // 获取指定月份的天数 function mGetDate(year, month){ var d = new Date(year, month, 0); return d.getDate();

2020-07-07 11:54:22 531

原创 问题总结:在vue-cli3里面使用audio标签

在最开始直接使用audio标签,一直加载不出来,也没有报错,<audio controls src='./assets/music/1.mp3'></audio>后来在在网上查询发现想要支持 audio 的 src 属性,要在 vue.config.js 自定义下 loader 配置,如下module.exports = { chainWebpack: conf...

2019-09-18 12:22:53 2290

空空如也

空空如也

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

TA关注的人

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