![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
考拉菜鸟
这个作者很懒,什么都没留下…
展开
-
el-table自动滚动到最底部
现有需求, 使用element-ui中el-table进行开发一个分组业务组件, 可以新增分组, 分组展示列表的最大高度160, 列表数量超过4条则显示滚动条添加分组功能, 点击新建分组, table的列表数据新增一条, 列表数量过多, 无法显示;期望: 列表数量过多, 点击新增, 自动滚动到新增那条数据所在的位置业务代码 //添加分组 addGroupItem() { const newRow = { groupName: '',原创 2021-12-22 16:54:01 · 4767 阅读 · 0 评论 -
生成全局命令,配置命令脚本npm link
本地打包demo首先要生成打包的命令,类似在命令窗口使用webpack命令目录结构 -bin mypack.js //js脚本存在位置 -lib -node_modules -src -package.json -package-lock.json 在package.json配置bin{ "name": "mypack", "version": "1.0.0", "description": "", "main": "index.js", "scripts原创 2021-08-09 11:27:44 · 941 阅读 · 0 评论 -
js比较运算的实现
JavaScript 一共提供了8个比较运算符。>大于运算符< 小于运算符<= 小于或等于运算符>= 大于或等于运算符== 相等运算符=== 严格相等运算符!= 不相等运算符!== 严格不相等运算符这八个比较运算符分成两类:相等比较和非相等比较。两者的规则是不一样的,对于非相等的比较,算法是先看两个运算子是否都是字符串,如果是的,就按照字典顺序比较(实际上是比较 Unicode 码点);否则,将两个运算子都转成数值,再比较数值的大小。非相等比较非相等运转载 2021-07-10 12:30:33 · 207 阅读 · 0 评论 -
迷你实现express调用中间件
const http = require('http');const slice = Array.prototype.slice;class LikeExpress { constructor(){ // 存放中间件列表 this.routes = { all: [], get: [], post: [], put: [], patch: [], delete: [] } } register原创 2021-06-08 17:35:04 · 73 阅读 · 0 评论 -
发布npm包
发布npm包先在https://www.npmjs.com/signup注册sign up在终端窗口中执行 npm login命令,输入 用户名,密码,邮箱,即可登录成功注意: 运行 npm login 前,需要先把下包的服务器地址,切换为 npm官方的服务器,否则会发布失败npm config set registry=https://registry.npmjs.org/将终端切换到包的根目录下,运行npm publish命令,即可将包发布到npm上(报名不能雷同)删除已经发布的包,执行.原创 2021-06-02 15:33:15 · 82 阅读 · 0 评论 -
手写promise
class Promise { // 构造函数: executor执行器函数 constructor(executor) { const self = this //状态 this.PromiseState = 'pending' this.PromiseResult = null this.callback = [] //成功的回调函数 function resolve(data) { //只有状态为pending才能继续执行.原创 2021-05-30 22:35:11 · 57 阅读 · 0 评论 -
使用DllPlugin/DllReferencePlugin/AddAssetHtmlPlugin配置
DLLPlugin 和 DLLReferencePlugin 用某种方法实现了拆分 bundles,同时还大大提升了构建的速度。webpack.dll.jsconst { resolve } = require('path');const webpack = require('webpack');module.exports = {//entry1:打包出来的dll文件将细化到每个入口名称 entry: { jquery: ['jquery'], lodash: ['.原创 2021-05-24 11:52:08 · 1244 阅读 · 0 评论 -
本地添加全局命令口令
目录结构:myApp -bin mypack.js -lib Compiler.js -template bound.ejs package.json package-lock.json// 配置 /bin/mypack.js #!/usr/bin/env node/*1.创建bin目录, 将打包主程序放入其中 主程序顶部添加'#!/usr/bin/env node'标识, 指定执行环境为node环境2.在package.json中添加bin脚本, pack原创 2021-05-18 14:22:06 · 206 阅读 · 0 评论 -
红黑树js
function RBTNode(value, parent) { this.value = value; this.parent = parent; this.left = null; this.right = null; this.color = true;//默认插入的节点颜色为红色}// 辅助函数// 使用boolean值作为颜色常量const RED = true;const BLACK = false;//染色const color = (node, col原创 2021-04-30 17:51:19 · 206 阅读 · 1 评论 -
AVLTree: js实现左右旋转
参考文章:js实现avl树的构建和查找https://cloud.tencent.com/developer/article/1538628function AVLNode(value) { this.value = value; this.left = this.right = null; this.height = 1;}// 获取节点高度: 该节点高度以经过的节点数作为avl树高度function height(node) { return node==null?0:原创 2021-04-29 09:43:23 · 108 阅读 · 0 评论 -
LeetCode: N皇后
leetcode: 51n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。/** * @param {number} n * @return {string[][]} */var solveNQueens = function(n) { // 使用递归方法,回溯思想.原创 2021-04-28 19:49:56 · 91 阅读 · 0 评论 -
leetcode:37数独-js:9*9宫格,行,列,3*3宫格内数独
function suDuNumber(board) { // 每行维护一个set,9行维护一个Set[]数组 let rowSetArr = new Array(9); let colSetArr = new Array(9); let blockSetArr = new Array(9); for(let i = 0; i <9; i++) { rowSetArr[i]=new Set(); colSetArr[i]=new Set(); bloc原创 2021-04-25 11:02:20 · 445 阅读 · 0 评论 -
并查集之朋友圈
/*** 并查集* 查找find: 找到集合代表* 合并union: 合并两个元素所在集合* getCount: 获取集合总数*/class UnionFind { constructor(num) { this.count = num; //集合的个数 this.father = new Array(num); //用于记录每个元素所在集合的代表 for(let i = 0; i < num; i++) { //father[5] = 5 => 5所原创 2021-04-18 10:47:50 · 45 阅读 · 0 评论 -
input选择文件的类型type
文件上传和传输中,<input type="file" id="input" accept=".doc,.docx,application/msword,application/zip">accept定义了文件 input 应该接受的文件类型。这个字符串是一个以逗号为分隔的 唯一文件类型说明符 列表。通过 File API,我们可以访问 FileList,它包含了表示用户所选文件的 File 对象file对象https://developer.mozilla.org/zh-CN/原创 2021-03-03 14:54:21 · 926 阅读 · 1 评论 -
模拟postman的send-and-download,前端请求实现
当后端接口返回流文件,使用postman的send and download可以直接将文件下载,但是前端应该怎么写接口响应逻辑exportHandler(data){ let self = this; let params = { name: data.name, Id: data.id }; //请求接口 axios({ method: 'get', url:'/export/file', params: params, responseType: 'blob'原创 2021-03-02 11:49:34 · 9468 阅读 · 4 评论 -
JavaScript 执行机制,宏任务和微任务(转载)
作者写的很棒, 转载一下https://blog.csdn.net/sunboylife/article/details/102858219https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/转载 2021-02-26 10:59:38 · 106 阅读 · 0 评论