- 博客(24)
- 收藏
- 关注
原创 包管理器-npm、yarn、cnpm、pnpm的比较
过去npm没有提供修改registry的功能,淘宝搭建了自己的registry,即淘宝npm镜像,淘宝还提供了一个CLI工具cnpm,其他使用和npm基本相同。在package.json的script字段配置常用的CLI命令,使用 npm run 脚本名称运行脚本。如果本地安装的包带有CLI,npm 会将它的CLI脚本放置到node_modules/.bin下,使用npx命令即可调用。使用命令npm install --global 包名 或 npm i -g 包名。全局安装的包放置在一个特殊的全局目录。
2024-07-10 09:45:13 1064
原创 Web Worker
worker()构造函数接收一个参数,参数为一个具名的 JavaScript 文件,该文件包含需要在 worker 中运行的代码。实际上是浏览器和服务器之间的代理服务器,它最大的特点是在页面中注册并安装成功后,运行于浏览器后台,不受页面刷新的影响,可以监听和截拦作用域范围内所有页面的。可以开启一个独立于 Web 应用程序主执行线程的后台线程,可以在独立线程中执行费时的处理任务,使主线程的运行不会被阻塞/放慢。在主页面与 worker 之间传递的数据是通过拷贝,而不是共享来完成的。
2024-06-24 11:36:39 866
原创 [前端]单点登录 SSO
单点登录(Single Sign On),简称为 SSO,是比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
2024-06-21 14:36:10 1497
原创 ES6 class转function
1. calss只能使用new调用,不能普通调用(cannot be invoked without ‘new’); 构造函数有两种来调用方法,普通调用和new调用2. class中的原型方法是不可枚举的,构造函数的原型方法可枚举3. class中的所有代码在严格模式下,构造函数中的代码在普通模式下4. class中的原型方法不能通过new调用,构造函数中原型方法可以用new调用
2024-05-15 11:19:18 199
原创 【JavaScript】生成器
Function*声明创建一个GeneratorFunction对象。每次调用生成器函数时,它都会返回一个新的Generator对象,该对象符合迭代器协议。当迭代器的next()方法被调用时,生成器函数的主体会被执行,直到遇到第一个yield表达式,该表达式指定了迭代器要返回的值,或者用yield*委托给另一个生成器函数。next()方法返回IteratorResult对象,其value属性包含了yield表达式的值,done返回布尔值表示生成器是否已经返回最后一个值。
2024-05-15 10:07:06 1345
原创 【JavaScript】判断数组的方法
它不检查值的原型链,也不依赖于它所附加的 Array 构造函数。对于使用数组字面量语法或 Array 构造函数创建的任何值,它都会返回 true。这使得它可以安全地使用跨领域(cross-realm)对象,其中 Array 构造函数的标识是不同的,因此会导致 instanceof Array 失败。在JavaScript中,跨域对象指的是不同iframe、window或不同页面的对象。一些早期的ES6对象没有Symbol.toStringTag,但是任然有一个特殊的标签。
2024-05-14 18:01:50 417
原创 【JavaScript】迭代器与迭代协议
可迭代对象可以进行for…of循环解构展开语法yield普通对象可以通过实现可迭代协议,使其可进行for … of循环。迭代协议可以定制对象的迭代行为,分为两个协议:1.可迭代协议:为对象或对象的原型对象,添加方法{},该方法返回符合迭代器协议的对象。2.迭代器协议:实现了next()方法的对象,next()方法返回一个对象: {done:false ,value:‘xxx’}{done:false,value:‘xxxx’} //继续迭代{done:true} //已结束。
2024-05-11 16:33:31 1326
原创 闭包为什么会造成内存泄漏?
因为JS有垃圾回收,内存中无法触达但垃圾回收无法回收的内存空间,会造成内存泄漏。在JS中还有一种情况,不在使用的内存但没有手动置为null,这部分内存永远不会被回收,也会被认为是内存泄漏。
2024-05-07 11:18:35 371
原创 【JavaScript】二叉平衡树的平衡方法单旋与双旋
不平衡的二叉排序树,可以通过旋转变成平衡二叉树。旋转的方式有左单旋、右单旋、左右双旋、右左双旋、左左双旋和右右双旋
2024-04-29 18:10:40 1075 1
原创 克鲁斯卡尔算法JavaScript版
1)选择最短的边进行连接2)边的两端至少有一个是未连接的节点,或者边两端的节点不在同一个部落中3)将符合连接条件的最短边进行连接,重复1,2步骤4)直到所有的节点都被连接,且都在一个部落
2024-04-25 15:12:24 289 2
原创 普利姆算法JavaScript版
4)如果这个边的另一端已经被连通,则看倒数第二短的边。3)如果这个边另一端没有被连通,那么就链接。5)重复2-4的步骤,将所有的点连通为止。2)找到以当前节点为起点路径最短的边。1)任选一个点为起点。
2024-04-23 09:21:08 189 2
原创 拖拽上传文件
top: 50%;width: 2px;*/.draging {</// alert("文件上传中");// };//div 默认不允许退拽到它上面,需要阻止默认行为//默认退拽文件到div上回打开该文件,需要阻止默认行为//拖拽的内容 类型//拖拽的不是文件if (!types ||!return;//可以拖拽多个文件。
2024-04-10 17:09:43 152
原创 oracle数据库中 Mybatis批量插入
oracle数据库中 Mybatis批量插入list数据TaskModel:public class TaskModel { private String pkid; private String empno; private String name; private String moduleNo; private String pageNo; private String fi...
2020-04-29 13:58:00 154
原创 oracle sql實現數據行轉列與列轉行
行轉列with temp as (select '四川省' nation, '成都市' 第一, '绵阳市' 第二, '德阳市' 第三, '宜宾市' 第四 from dual union all select '湖北省' nation, '武汉市' 第一, '宜昌市' 第二...
2020-04-29 13:51:22 130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人