- 博客(72)
- 收藏
- 关注
原创 创建一个自定义的Chrome插件项目
这是插件的主要配置文件,Chrome浏览器会读取这个文件来获取插件的信息。你可以在chrome://extensions/页面看到你的插件,并在浏览器的工具栏中找到它。创建你的插件需要的其他文件,如popup.html、background.js等。这些文件的内容取决于你的插件需要实现的功能。注意:Chrome插件的开发需要一些HTML、CSS和JavaScript的知识。点击"加载已解压的扩展程序",选择你的插件文件夹。创建一个新的文件夹来存放你的插件文件。“name”: “我的插件”,
2024-01-18 21:14:58
761
原创 创建一个自定义的VSCode插件项目
安装Yeoman和VS Code Extension Generator:Yeoman是一个项目脚手架工具,VS Code Extension Generator是一个Yeoman插件,用于生成VSCode插件项目的基本结构。测试插件:在VSCode中按F5键,VSCode会在新的窗口中运行你的插件,你可以在这个窗口中测试插件的功能。打包插件:当你完成插件开发并准备发布时,你可以使用vsce工具打包你的插件。以上步骤完成后,你就可以得到一个".vsix"文件,这就是你的VSCode插件。
2024-01-18 21:07:31
817
原创 笔记:给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺(逆)时针顺序螺旋排列的正方形矩阵
给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺(逆)时针顺序螺旋排列的正方形矩阵
2021-12-28 14:46:42
1113
原创 笔记:给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度
给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度
2021-12-27 15:22:03
4646
2
原创 笔记:我们定义「顺次数」为:每一位上的数字都比前一位上的数字大 1 的整数。
我们定义「顺次数」为:每一位上的数字都比前一位上的数字大 1 的整数。
2021-12-27 11:38:51
347
原创 axios abort掉请求笔记
const CancelToken = axios.CancelToken;const source = CancelToken.source();axios.get('/user/12345', { cancelToken: source.token}).catch(function(thrown) { if (axios.isCancel(thrown)) { console.log('Request canceled', thrown.message); } else {
2021-12-14 16:14:40
3989
原创 笔记20211126
let nums=[ [1,2,3,4,5,6], [2,3,4,5,6,7], [3,4,5,6,7,8], [4,5,6,7,8,9],]/* * 1 * 2 2 * 3 3 3 * 4 4 4 * 5 5 5 * 6 6 6 * 7 7 * 8 */function f(arr) { const arrLen = arr.length const len = arrLen + arr[0].length - 1 for (let i = 0
2021-11-26 17:29:23
119
原创 win10主机前置耳机孔无声音,但是后置有声音,按照下面的设置进行设计即可
Realtek 高清晰音频管理器(亲测,主要是记录下,防止以后不备之需)
2021-11-17 21:48:24
4613
原创 笔记:只保留数字以及数字字符串,并且去重并排序
/* 题目 输入: [1, 5, 4, '2', '3a', 'ab', {name: 'tmp'}, 4, 5, 5, 5] 输出: [1, 2, 4, 5] // 只保留数字以及数字字符串,并且去重并排序*/ var list = [1, 5, 4, '2', '3a', 'ab', {name: 'tmp'}, 4, 5, 5, 5]function getNumer(arr) { let newArr = [...new Set(arr)] let
2021-11-16 20:43:26
366
原创 笔记:简单的实现bind、apply、call
Function.prototype.myBind = function() { // console.log('typeof arguments: ', typeof arguments); // console.log('arguments: ', arguments); let fn = this let ags = [...arguments].slice(1) let context = arguments[0] return function () { let
2021-11-16 17:20:55
571
原创 如何知道滚动的页面滑到了底部
如何知道滚动的页面滑到了底部1、滚动页面的高度document.querySelector('.scroll-page').scrollHeight2、浏览器可视区的高度window.innerHeight3、滚动的高度document.querySelector('.scroll-page').scrollTop当然使用减法可知是否滚动到底部document.querySelector('.scroll-page').scrollHeight - window.innerHeight
2021-11-16 15:21:30
1385
原创 笔记:给定一个数组,然后乱序输出数组
const arr1 = [1,2,3,4,5]function f1(a) { let res = [] const f2 = function(arr) { let len = arr.length if (len > 0) { let index = Math.floor(Math.random()*len) res.push(arr[index]) ar
2021-11-12 20:54:35
345
原创 记录一个防抖函数在界面打印鼠标坐标的笔记
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Doc
2021-11-12 20:52:41
467
原创 给定数组 [0,1,2,3],要求输出其全排列
给定数组 [0,1,2,3],要求输出其全排列:结果如下/** * @param {number[]} nums * @return {number[][]} */ var permute = function(nums) { let matrix = []; const subfunc = (arr, temp) => { // 终止条件:也就是排列结果 if (arr.length === 0) { matrix.push(temp)
2021-11-12 11:23:48
988
原创 初始化CSS样式格式化
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,l
2021-10-28 10:15:05
176
原创 上传处理进度事件
axios.create({ baseURL: 'http://xxx.com', withCredentials: true }).request({ url: '/aaa/bbb/uploadFile', method: 'post', data: params, // 上传处理进度事件 onUploadProgress: process => { console.log('上传进度百分比: ', Math.floor(proces
2021-10-09 11:53:13
136
原创 一次请求多个接口,依次输出结果(简单实现Promise.all方法)
var time = [2000, 1000, 500]function promiseAll(arr) { let count = 0 let res = [] return new Promise((resolve, reject) => { arr.forEach((el, i) => { getApi(el).then(r => { count++ // 按照顺序依次输出结果 res[i] = r
2021-10-09 10:39:28
1277
原创 js实现深拷贝cloneDeep
function cloneDeep(obj, hasMap = {}) { if (hasMap[obj]) return if (!typeof obj === 'object') return obj let result = obj instanceof Array ? [] : {} hasMap[obj] = true for (const key in obj) { if (Object.hasOwnProperty.call(obj, key)) {
2021-09-22 10:08:09
827
原创 括弧匹配 函数
const keyMap = {‘{’: ‘}’,‘[’: ‘]’,‘(’: ‘)’}function isFormat(str) {if (!str) return false // 括弧匹配,你得有长度嘛let list = [] // 存储左半边括号const len = String(str).lengthif (len % 2) return false // 长度为基数,肯定不是成对的括弧for (let i = 0; i < len; i++) {const key
2021-09-17 09:48:06
195
原创 sum(1)(2)(3)(4)() or sum(1)(2)(3).count() or sum3(1,2,3)(1,2,3,4)()
function sum(x) { return function add(y) { if (!y) return x return sum6(x+y) }}sum(1)(2)(3)(4)()function sum22(x) { function add(y) { if (!!y) return sum22(x + y) } add.count = function() { return x
2021-09-05 17:50:09
230
原创 输入一个对象和对象上的一个节点或子节点的值(值唯一,值类型为字符串),输出该值对应在该对象的key的路径【编程】
输入一个对象和对象上的一个节点或子节点的值(值唯一,值类型为字符串),输出该值对应在该对象的key的路径【编程】const obj1 = { a: { a_1: { a_1_1: 'abc', a_1_2: 'efg' } }, b: { b_1: 'xyz', b_2: '111' }, c: '000'}function findStr1(o,
2021-09-05 17:19:09
162
原创 env 配置:打包不同环境下的包
记录环境变量的配置ENV// package.json"scripts": { "start": "react-app-rewired start", "build": "react-app-rewired build", "build:dev": "env-cmd -f .env.development react-app-rewired build", "build:tttt": "env-cmd -f .env.tttt react-app-rewired bu
2021-08-24 10:29:04
658
原创 jsconfig.json是什么?vscode配置了jsconfig.json就能提示文件路劲,提升开发效率
{ "compilerOptions": { "target": "es2017", "baseUrl": "./", "paths": { "@components/*": ["src/components/*"], "@imgs/*": ["src/imgs/*"], "@pages/*": ["src/pages/*"], "@redux/*": ["src/redux/*"], "@routers/*": ["s
2021-08-24 10:18:22
1353
原创 introjs,intro.js-react 步骤指引
记录introjs在react中的应用先上效果图:安装依赖1、安装introjs和introjs-react依赖npm install intro.js intro.js-react2、引入introjs-react和样式文件import { useState } from 'react'import { Steps } from 'intro.js-react'import "intro.js/introjs.css";3、定义步骤对应的class–描述文字const st
2021-08-20 10:56:10
1491
1
原创 记录redux在react中的使用方法
安装redux:$ npm install --save redux react-redux @rematch/core immer或$ yarn add redux react-redux @rematch/core immer记录store.js的写法import { init } from '@rematch/core'const models = {}// 获取models下所有的xxModel.jsconst modelFiles = require.context('./r
2021-07-15 17:33:48
206
原创 记笔记--React源码之路--实现从jsx、函数组件、类组件渲染到浏览器界面
React版本号:17.0.1目的:实现jsx、函数组件、类组件渲染到浏览器界面:手撸 ReactDOM.render前提须知:我们需要了解虚拟DOM,React已经与babel合作,我们写的jsx会被babel转义为下图中的一个用于描述JavaScript节点的对象,虚拟DOM就张下图这样哈界面图:控制台查看真实DOM布局:index.js文件代码:// 模拟render方法文件引用import TreactDom from './TestDemo/TreactDom'// 模拟类组
2021-07-14 16:49:48
339
原创 微信小程序--SocketTask
微信小程序+node验证SocketTask服务端:node启的一个监听本地端口的服务1、创建一个新的文件夹,初始化一个package.jsonnpm init内容如下:{ "name": "server", "version": "1.0.0", "description": "", "main": "server.js", "scripts": { "test": "echo \"Error: no test specified\" && exit
2021-06-30 11:12:09
4801
2
原创 cmd上删除node_modules
/s 是代表删除所有子目录跟其中的档案。/q 是不要它在删除档案或目录时,不再问我 Yes or No 的动作。要删除的目录前也可以指定路径,如:1、进入node_modules所在目录打开cmd;2、rmdir /s/q node_modules。...
2020-11-26 10:29:08
843
原创 重温防抖+节流
防抖:输入框输入搜索,减少输入中没有必要的http请求function debounce (func, wait) { let timer = null; return function () { if (timer) { clearTimeout(timer); } timer = setTimeout(() => { func.apply(this, arguments); }, wait); }}window.onscroll = debounce(()
2020-11-10 20:04:17
112
原创 JS实现括弧匹配判断函数
function isMap (str) { if (!str.length) { throw Error('传入字符串无有效括弧!') } let list = [], length = str.length, map = { '{': '}', '[': ']', '(': ')' }; for (var i =0; i &
2020-11-07 10:12:59
179
原创 JS递归+缓存机制实现斐波拉契函数
let obj = { 1: 1, 2: 1};function F (n) { if (obj[n]) { return obj[n]; } obj[n] = F(n-1) + F(n-2); return obj[n];}缓存效果图:
2020-11-07 10:05:39
418
原创 vscode插件离线安装
1、进入vscode插件官网(https://marketplace.visualstudio.com/)下载你需要的插件(Download Extension);下载位.vsix后缀文件2、将你下载的文件放在一个新建的目录下面,进入该目录下的控制台(cmd)3、键入code --install-extension xxx.vsix即安装了xxx插件4、重启vscode即可...
2020-05-26 09:20:09
536
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅