自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Promise执行顺序详解

Promise 的执行顺序详解

2022-03-08 22:20:15 2706

原创 微信小程序中长按图片识别二维码

【1】image标签 + show long press menu<image src="https://img.qr.com/qr.jpg" style="width: 100%;" mode="widthFix" show-menu-by-longpress="{{true}}"></image>【2】wx.previewImage【3】web-view参考文章

2021-12-17 11:30:49 1224 1

原创 【js算法】贪心算法----跳跃游戏(一看就懂)

【思想 】在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解最优解【题目】给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。【思路】例如这样一个数组,我们需要判断的是,它的位置+它位置所对应的值是否等于数组的长度而已[2,3,1,1,4][3,2,1,0,4]var canJump = function(nums) { let k

2021-06-30 11:26:53 1013

原创 【js算法】贪心----剪绳子(一看就懂)

【贪心算法的思想】在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解最优解。【题目】给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m] 。请问 k[0]k[1]…*k[m] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。【思路】利用均值不等式求得 将绳子分成

2021-06-30 09:05:45 814

原创 【js算法】动态归回dp----不同路径(详细解答,一看就懂)

【问题】一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径【思路】最后的终点有两条路径 从上边一格进入或者从左边 一格进入;给每一个格子一格值,表示走入这个格子的走法,那么, 最后一个格子的走法 = 上边一个格子的走法 + 左边一格格子的走法找到动态规划的公式之后【代码】/** * @param {number} m * @p

2021-06-28 13:42:29 561

原创 动态规划DP--爬楼梯问题

【问题】假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?【要求】示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。4. 1 阶 + 1 阶 + 1 阶5. 1 阶 + 2 阶6. 2 阶 + 1 阶【解题思路】要爬到楼梯的最上层,最后一步有两种走法,一种是一步一个阶梯,还有一种是

2021-06-16 17:00:36 1064 1

原创 Taro编译微信小程序实现顶部自定义导航栏

【需求】使用taro开发微信小程序的过程中,涉及到小程序的需要自定义顶部导航栏(导航栏渐变色),微信小程序中只能够设置固定的颜色,渐变颜色以及添加其他按钮的操作就不能够通过小程序自带的api来实现【思路】配置自定义导航栏设置获取顶部状态栏高度、胶囊按钮高度、以及胶囊到顶部的高度计算状态栏的高度,并赋值给dom元素实现icon跳转及组件化【代码】1. 配置自定义导航栏设置pages — demand — index.config.jsexport default { navi

2021-06-09 19:22:13 7286 1

原创 JS将手机号中间四位变为****的四种方式

【需求】小程序,H5, PC的用户信息展示时需要对用户的电话号码进行加密处理,其中常见的做法是将中间四位数字变成 **** ,下边有四种办法1. 正则表达式 【推荐】let tel = '18000010001'tel.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2")console.log(tel)2. 利用数组splice,split,join方法let tel = '18000010001';let tempArray = tel.split("")

2021-06-09 18:11:42 4674

原创 Git常用命令及知识点

git相关的名词解析git/svn 团队的代码管理工具 git是分布式 svn集中式git 里包含本地仓库 和远程仓库github/gitee 一大波远程仓库的集合体git远程仓库 团队使用在服务器的仓库git的本地仓库 本地创建随便使用gui 可视化工具 gitDesktop sourceTree conrestone vscode.git 隐藏文件 表示git的仓库工作区 可以可到的写代码的地方叫工作区暂存区 在git的仓库我们是看不到的用来暂时保存呢提交的修改分支 将

2021-06-07 12:33:38 154

原创 create-react-app中安装并引用less

摘要执行暴露出webpack 相关的配置文件安装less修改webpack配置less版本报错及兼容处理具体步骤1. 执行暴露出webpack 相关的配置文件在使用了create-react-app my-app之后 ,使用 npm run eject 暴露出webpack 相关的配置文件create-react-app my-appcd my-app npm run eject 2. 安装lessnpm install less-loader less --save-dev

2021-05-25 16:03:50 193

原创 前端实现 html 下载(保存)为 word 格式的文件

前端实现 html 下载(保存)为 word 格式的文件需求:不依靠后端的文件链接,直接将页面中的 DOM 元素转码为相应的 word 文档,并保持页面风格大致不变。前端一般的下载文件的方式 前端下载文件大致有三种方式,网上都有相应的答案,但是总的来说是通过 a 标签的her直接访问或者 a 标签的H5的download方法来实现,此处我不多赘述,详情请参考网上的答案我这里要说的是,如何将一个页面上的某个 DOM 元素直接转换成 Word 文件; 并且保存到本地,注意这里没有下载,只是获

2021-04-22 23:24:12 4652

原创 2021-04-20

Nuxtjs 中实现动态路由以及动态路由的重定向(express框架)需求场景:在一个页面中有若干个菜单栏,点击其中一个菜单栏,浏览器中的地址栏的路由发生改变;其中的路由不能够固定写死,需要自动生成满足运营的配置和后期的修改;不论路由发生怎么样的改变,只要最基础的 path 不改变,最终都要重定向到基础页面;例如:我们最初访问的页面地址为https://law.test.zbjdev.com/contract这里最基础的 path 对应的是 law.test/zbjdev.com这里第

2021-04-20 22:31:53 183

原创 VsCode 中的断点调试

VsCode 中的断点调试【前提条件】 MacOS 和 node环境下1.点击vscode左侧的debug按钮;2.出现调试的菜单栏之后点击运行和调试下拉菜单 3.选中相应的工作区之后添加配置 4.出现相应的json配置文件,点击右下方的添加配置按钮5.选择相应的调试环境(一般nuxt层的调试选择 Nodejs:Attach){ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.mic

2021-04-20 21:40:40 16289

原创 iPhoneX 及以上 手机底部适配 CSS3方式

iPhoneX 及以上 手机底部适配 CSS3概述:iOS移动端设备从iphoneX之后几乎都是全面屏,刘海屏。但是像这种全面屏的iOS设备,在底部有一个菜单呼出按钮,这个时候我们就需要进行相应的适配。这里我简单记录下我自己在工作中使用的适配方式。需求场景实现iPhoneX 及以上的手机底部适配,当浏览器底部的菜单栏被隐藏的时候,位于底部的选项框自动增加高度当浏览器底部的菜单栏被显示的时候,位于底部的选项框自动减少高度实现方式在css中有一个计算属性 calc() , 将需要计算的值(

2021-01-13 22:46:43 2538

原创 async 和 await 浅析 ----(懂Promise的进!)

async 和 await 浅析----(懂Promise的进!)如果你暂时不明白promise,请不要看这边文章,建议去看别的文章。两件事:async 做了啥?await在等啥?async 做了啥?async function fn1(){ return 123}function fn2(){ return 123}console.log(fn1()); // Promise{123}console.log(fn2()); // 123// fn1()返回的

2020-11-30 15:43:57 244

原创 nvm 镜像配置,安装管理 nodejs 版本

nvm 镜像配置,安装管理 node 版本众所周知 Windows 的node版本最方便的版本管理工具就是nvm,但是一般nvm有一个缺点就是下载特别的慢。很多时候我们辛辛苦苦安装了nvm,然后辛辛苦苦等了很久的安装,结果还是安装失败。1. nvm 镜像的配置自己踩过的坑,给大家分享下,如何配置 nvm 的镜像?请参考下边的操作1.在 nvm 的安装路径下,找到 settings.txt,在后面加上这两行node_mirror: https://npm.taobao.org/mirrors/

2020-11-07 23:25:44 14727 1

原创 防抖和节流----一看就懂(附赠代码测试)

防抖和节流----一看就懂 (附赠代码测试)1. 防抖概念:多次触发一个动作,只执行最后一个动作应用:页面滚动触发事件、窗口缩放事件、多次点击按钮事件等等测试代码:例如一个页面很长,你要监听鼠标滚轮的滚动事件,但是又不希望太频繁的触发操作时,请参考下面的简单例子<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="vi

2020-10-13 00:21:54 386

原创 JavaScript中的严格模式简述

JavaScript中的严格模式1、用法在脚本文档的首行或者在函数的首行写上一句'use strict'即可。2、严格模式的特点有七个特点分别是:参数必须使用 var 进行声明;var num = null ; //变量必须要使用var 进行声明不能够使用 with ;var obj={ name:'kevin', age:16, heght:160}var num = 10with(obj){ console.log('my name i

2020-08-12 11:45:26 127

原创 warning: 不能访问 ‘/Users/mac/.config/git/ignore‘三部曲,帮你解决此问题

warning: 不能访问 '/Users/mac/.config/git/ignore': Permission deniedwarning: 不能访问 '/Users/mac/.config/git/attributes': Permission denied首先如果你出现了上述的bug的时候,请先读一下这个bug什么意思;首先我们知道这是两个问题,但是这两个问题都是由于权限不够所造成的,你看最后就知道了,叫做Permission denied,所以权限问题的话,你就打开权限就好了。这里的话

2020-07-26 11:20:06 2140

原创 JavaScript中的基本类型和引用类型简要笔记(一看就懂)

JavaScript中的基本类型和引用类型JS中包含两种不同的数据的类型----基本类型和引用类型。基本类型值的是简单的数据段,引用类型指的是可能由多个值构成的对象。在将值赋值给一个变量的时候,解析器必须确定这个值是基本类型还是引用类型。我们常见的五种基本的数据类型Undefined,Null, Boolean,Number,String,这五种数据类型是按照值来进行访问的,因为可以操作保存在变量中的实际的值。引用类型的值是保存在内存的对象。与其他语言不同的是,JS不允许直接访问内存中的位置,也就是

2020-07-05 10:17:32 157

原创 JavaScript中的函数简要笔记

JS中的函数函数对于任何语言聊熟都是一个核心的概念。通过函数能够封装任意多条语句,而且可以用在任何的地方、任何时候调用执行。ECMAScript中的函数使用function 关键字来进行生命,后边跟一组参数以及函数体。函数的基本语法如下所示:function functionName(arg0,arg1,arg2,...argN){ statement}下边是一个函数的例子function functionName(name ,message){ console.log('my

2020-07-04 18:52:33 153

原创 Javascript中的switch语句

Javascript中的switch语句switch语句与if语句的关系最密切,而且也是在其他语言中最被普遍使用的一种流程控制型语句。ECMAscript中switch语句的语法与其他基于C的语言非诚接近,如下所示switch (expression) { case value: statement; break; case value: statement; break; case value:

2020-06-26 01:12:54 601

原创 JavaScript中的with语句

JavaScript中的with语句Javascript中的with语句的作用是将代码的作用域设置到一个特定的对象中。with语句的雨语法如下with (expression) statement定义with语句的目的主要是为了简化多次编写同一个对象的工作,如下面的例子var qs = location.search.substring(1);var hostName=location.hostname;var url =location.href;上编辑行代码都包含location对象,

2020-06-26 00:42:31 559

原创 Promise原理及使用方法

Promise是一个异步函数的解决方案,主要是为了解决回调地狱的问题(函数里边调用函数,从而形成多层嵌套,导致代码的可读性和维护性变差);promise本身是一个函数,自身有resolve ,reject ,all,三种方法;原型里边有then(),catch()两种方法promise 有两个特点(1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(...

2020-04-16 21:05:14 639

原创 浅析typeof 和 instanceof的区别(一看就懂)

typeof 和 instanceof的区别typeof简单来说就是用来测试变量的类型常见的变量的类型有六种:StringNumberBooleanObjectUndefinedFunction使用typeof 进行检测 返回的是一个字符串的信息let test = 123console.log(typeof test) // numberinstanceof...

2020-04-14 23:22:12 1798

原创 JS 数组中splice()方法的使用

splice() 方法对数组进行删除、插入、替换,是最强大的数组方法,返回值是数组,改变原数组。splice(index,num,string) —> 从第index个开始,删除num个项,插入string删除:var arr=['smile',2,3,'marie'];arr.splice(0,2) //从第一个值(0)开始删除该数据的两(2)个值alert(arr.s...

2020-04-07 21:14:43 542

原创 JavaScript 十种常见的数组方法总结

JavaScript 十种常见的数组方法总结1.push() 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。2.pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项。3.unshift()可以接收任意数量的参数,把它们逐个添加到数组前面,并返回修改后数组的长度4.shift() 从数组末尾移除前面一项,减少数组的length值,然后返回...

2020-04-07 21:07:55 360

空空如也

空空如也

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

TA关注的人

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