自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 滑动窗口-最小覆盖字串

使用现代 JavaScript 语法。优化滑动窗口收缩逻辑。

2025-04-07 17:24:11 69

原创 算法:双指针法--计算两数之和

【代码】算法:双指针法--计算两数之和。

2025-04-02 17:35:52 140

原创 算法:最大单词长度乘积

方案二:用整数二进制位记录字符串中出现的字符。方案一:哈希记录暴力循环(性能略差)

2025-04-02 17:11:31 211

原创 算法:二进制求和

二进制求和

2025-04-02 10:50:32 144

原创 实现 32 位有符号整数的除法运算

【代码】实现 32 位有符号整数的除法运算。

2025-04-01 19:25:12 137

原创 js 算法-最小堆、最大堆

【代码】js 算法-最小堆、最大堆。

2025-03-17 11:11:32 173

原创 二叉树-前序遍历、中序遍历、后序遍历

方法二:非递归(栈思想)方法二:非递归(栈思想)方法二:非递归(栈思想)

2025-03-16 11:44:04 118

原创 算法-滑动窗口-用于解决 “最长无重复字符子串“ 问题

滑动窗口算法--最长无重复字符字串 的解决方案

2025-03-09 17:44:27 82

原创 js 两个对象怎么对比是否相同

• 简单数据 → JSON.stringify• 生产环境复杂对象 → lodash.isEqual• 高频次性能敏感场景 → fast-deep-equal• 特殊需求(如不可变数据) → 手写递归 + 定制逻辑。

2025-03-07 19:01:00 297

原创 while-经典面试题实战

while 强大的循环

2025-03-07 17:58:54 221

原创 js 常用的几种 图片下载的功能总结

几种常用的图片下载及会遇到的问题1、同源路径直接用a标签+download 属性:<a href="https://baidu.com" download="百度.jpg">下载</>或者用blob文件流的形式:// 获取图片文件流download (row) { const imgUrl = row.fileUrl let xhr = new XMLHttpRequest() xhr.open('get', imgUrl, true) // 至关重要

2022-03-30 22:20:28 1502

原创 vue -- 页面过多热更新加载过慢解决方案

解决方案:babel-plugin-dynamic-import-node安装:npm install babel-plugin-dynamic-import-node --save-dev使用配置:1、如果你使用的是:.babelrc就在.babelrc文件中添加:2、如果你使用的是:babel.config.js修改文件module.exports = { presets: [ '@vue/app' ], env: { development: { plugins

2021-09-01 15:23:15 2255

原创 根据id找节点

场景:给出一个节点树,根据id找出对应的节点节点树:let tree = { id: 1, children: [ { id: 2, children: [ {id: 3}, { id: 5, children: [ {id: 6} ] }, null ] }, { id: 4 }, null ]}// 写一个方法function getNode(root, id) {/

2021-08-05 12:19:19 855

原创 一个简单的抽奖函数

假定场景:写一个方法,返回 1,2,3,4 表示四种奖品,这四种奖品的概率分别是 5%,15%,25%,55%;思路,利用Math.random()的随机数,然后将四种奖品填满一个100长度的数组容器中,随机抽取;上代码:function getReward() { let arr1 = new Array(5).fill(1); let arr2 = new Array(15).fill(2); let arr3 = new Array(25).fill(3); let arr4 = new

2021-08-05 09:26:08 582

原创 axios请求-- 取消上一次的请求

问题场景:很多时候,我们的提交按钮联系点好多次,或者我们的change事件联系触发好多次,但是可能有的请求返回错误,有的有数据,接着,在接口请求超时或者是返回成功的时候,就会出现页面上可能一直在弹出请求失败的消息,而下拉中缺有数据的尴尬请求。为了解决这个问题,我们需要对axios进行处理:引入axiosimport axios from 'axios'; const CancelToken = axios.CancelToken;在全局先定义一个cancle变量window.cancle=nu

2021-08-02 11:33:19 887

原创 async、await、Promise、setTimeout执行顺序

先看一段代码: async function a2() { console.log(3) } async function a1() { console.log(1) await a2(); console.log(2); } console.log(4) a1() setTimeout(()=> { console.log(5) }) new Promise((resolve, reject)=>{ console.log

2021-07-28 11:21:27 151

原创 2020-08-12

import { axios } from '@/utils/request'/** file:文件对象*/function upFile (file) { const fileList = [ file] const formData = new FormData() fileList.foreach(file => { formData.append('file',file ) }) axios({ url:url, method: 'post',

2020-08-12 19:51:42 126

原创 递归--由子级寻找父级

/** arr原始数组;orgCode:子级code* this.orgCodeList:存放获取的数据* 主要思想就用递归的方式来循环原始数组*/getOrgCode (arr, orgCode) { for(let i= 0; i < arr.length; i++) { const item = arr[i] if (!orgCode) { return false } else if (item.orgCode === orgCode) { this.org

2020-06-04 17:53:22 1960

原创 vue 刷新 当前页面

场景页面需要重置刷新的地方刷新当前页有可以采用一下3种方式1、window.location.reload()是原生JS提供的方法,整个浏览器进行了重新加载,闪烁,体验不好2、this.$router.go(0)是vue路由里面的一种方法,整个浏览器进行了重新加载,闪烁,体验不好3、通过路由跳转的方法刷新,具体思路是点击按钮跳转一个空白页,然后再马上跳回来4、provide / i...

2019-11-27 15:20:11 191

原创 js 数组扁平化 总结

数组扁平化的几种方法本文是从网上找来的大佬文章,作了些许总结,方便用时调用,参考来源定义一个数组 const arr = [1, [2, 3, [4,[5,6,[7,8,[9,0]]]]]]一、ES6 给出的 flat() 和 flatMap()es6数组方法flat()默认只会“拉平”一层,如果想要“拉平”多层的嵌套数组,可以将flat()方法的参数写成一个整数,表示想要拉平的层数,默...

2019-09-23 16:34:30 316

转载 两种勉强可以获取js 顶层对象的方法,适用于浏览器/nodejs/webworker

浏览器里面,顶层对象是window,但 Node 和 Web Worker 没有window。浏览器和 Web Worker 里面,self也指向顶层对象,但是 Node 没有self。Node 里面,顶层对象是global,但其他环境都不支持。方法一:var getGlobal = function () { if (typeof self !== 'undefined') { r...

2019-05-30 15:33:48 542

原创 小程序mpvue中flyio的使用

Fly.js 一个基于Promise的、强大的、支持多种JavaScript运行时的http请求库. 有了它,您可以使用一份http请求代码在浏览器、微信小程序、Weex、Node、React Native、快应用中都能正常运行。同时可以方便配合主流前端框架 ,最大可能的实现 Write Once Run Everywhere。本文主要介绍一下如何在微信小程序中使用flyio的配置。npm安装:...

2019-05-23 17:44:19 1234

原创 读取excel文件内容,vue+element封装的一个组件

准备:1、引入elementUI(安装详见官网);2、引入插件js-xlsx(安装:npm install xlsx --save )3、import XLSX from ‘xlsx’<template> <div> <input ref="excel-upload-input" class="excel-upload-input" type="f...

2019-04-25 10:15:33 756

原创 前端导出数据(需要有一个数据流)

这里用的是后台传的一个数据流,利用new Blob()来导出数据:postOrderExportList(obj).then(res => { if (window.navigator.msSaveOrOpenBlob) { navigator.msSaveBlob(blob, '订单.xls'); } else { ...

2019-04-24 19:38:27 939

原创 es6 find操作三级联动

目的:根据code["200000", "200000", "200001"]翻译省市区中文名这是原始的翻译参照json:const options = [ { value: '200000', label: '上海', children: [ { value: '200000', label: '上海', ...

2019-04-20 16:56:13 451

原创 vue ant-design table转译数据

利用 customRender这个数据来处理<template> <a-table :columns="columns" :dataSource="list" > </a-table></template><script>export default { name: "Financi...

2019-04-18 19:23:06 3857 4

原创 vue-cli3中,使用mock模拟数据的配置

1、在根目录下创建一个mock文件夹,用来存放模拟数据json文件;2、在根目录中找到vue.config.js这个文件,修改为下面的配置:const mockdata = require('./mock/test.json');module.exports={ devServer: { port:4000, before(app){ app.get('/g...

2019-04-16 09:43:45 1618

转载 纯CSS实现垂直居中的几种方法

垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对定位,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加多样化。html结构:<div class="box box1"> <span>垂直居中</span></div>方法1:table-cell.bo...

2019-03-28 22:18:35 122

转载 js实现图片上传并预览功能

中心步骤:(1)首先需要定义好一个,src为空或者是默认图片,(2)如果src为空,就给定义好的img设置为透明:opacity:0;如果不是透明的话,会显示一个图片的标志,不美观。(3)点击上传图片后,获取上传的图片的src,将它赋值给事先定义好的,再给设置opacity:1;方法一:html代码:<div id="imgPreview"> <div id="pr...

2019-03-20 11:44:59 6007

原创 js 对比json数据

原理:利用递归遍历对比,遇到不相等就return false;/** 对比两个json数据* @param:obj1* @param:obj2* @return */function compreObj(obj1, obj2) { var flag = true; function compre(obj1, obj2) { if (Object.key...

2018-12-24 14:44:00 4688

原创 JS 调用函数内部的函数(可以这样的理解:通过一个函数可以调用另一个函数的内部函数)

可用两种方法实现:1、实例化函数为对象;2、闭包返回内部值。一、实例化函数为对象/** 创建函数--面向对象*/var objfn = function() { this.a = function(arg){console.log(arg);} this.b = function(arg){console.log(arg+1);} } /*创建实例*/var fn = n...

2018-12-22 15:47:37 17701

转载 PHP 常用的header头部定义汇总

&lt;?phpheader('HTTP/1.1 200 OK'); // ok 正常访问header('HTTP/1.1 404 Not Found'); //通知浏览器 页面不存在header('HTTP/1.1 301 Moved Permanently'); //设置地址被永久的重定向 301header('Location: http://www.ithhc.cn/'); //跳...

2018-12-09 16:46:04 218 1

原创 自定义扩展js函数库---string.replaceAll()---字符替换所有指定字符

/* * 自定义扩展js函数库 * @time:181203 * @add : string.replaceAll()---字符替换所有指定字符 *//* * string.replaceAll()---字符替换所有指定字符 * @parameter: FindText--原文本要替换值 * @parameter: RepText--将要替换值 */String.prot...

2018-12-03 13:50:22 574

原创 js 写自定义回调函数callback

第一种形式:/** 构造回调函数* @param:p1* @param:callback 回调函数*/function testfn(p1 ,callback) { console.log('调用第一次函数--&gt;'+p1); if(callback){ callback(p1); }}//回调函数function testcallback(p){ consol...

2018-11-17 23:04:13 4619 1

原创 js中文按首字母排序

var array = ['武汉', '北京', '上海', '天津','','am','pam','1213','123'];var resultArray = array.sort( function compareFunction(param1, param2) { return param1.localeCompare(param2,"zh"); });...

2018-11-05 16:46:26 10757 2

原创 判断浏览器是否支持placeholder属性

//判断浏览器是否支持placeholder属性function isSupportPlaceholder() { var input = document.createElement('input'); return 'placeholder' in input;}如果支持,返回true,否认在false;运用:// 如果不支持placeholder,用jQuery来...

2018-10-17 10:03:28 518

原创 css优化滚动条默认样式

css样式:.inner{ width: 265px; height: 400px; position: absolute; top: 33px; left: 13px; /*cursor: pointer;*/ overflow...

2018-10-11 11:30:14 662

原创 js 文件下载/上传 进度条

/** * 下载文件 - 带进度监控 * @param url: 文件请求路径 * @param params: 请求参数 * @param name: 保存的文件名 * @param progress: 进度处理回调函数 * @param success: 下载完成回调函数 * eg: progressDownLoad({url:'http://loacalhost:...

2018-10-10 17:29:07 4583

原创 获取 鼠标左键选中的文本

if (window.getSelection) {//一般浏览器 userSelection = window.getSelection();} else if (document.selection) {//IE浏览器、Opera userSelection = document.selection.createRange();}userSelection=userSelect...

2018-09-26 14:26:31 2396

原创 php字符代表意思

php字符代表意思:“\0” — NULL “\t” — 制表符 “\n” — 换行 “\x0B” — 垂直制表符 “\r” — 回车 ” ” — 空格

2018-07-16 11:23:28 512

空空如也

空空如也

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

TA关注的人

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