![](https://img-blog.csdnimg.cn/554b9720e7794a6e8feebb93c1bd7869.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JavaScript
文章平均质量分 71
会持续更新
李和贵
开启全栈之旅!近期会更新可视化和服务端部分
掘金同名:https://juejin.cn/user/center/signin?avatar_menu
有问题可关注下面推广公众号:联系我
展开
-
前端实现下载word(多个word下载)-- docxtemplater
docxtemplater 是一个邮件合并工具,以编程方式使用,处理条件、循环,并可扩展以插入图像html或表格。docxtemplater 使用 Javascript 对象(或 JSON)作为数据输入,因此也可以轻松地从其他语言中使用(请参阅docker 版本它处理 docx 和 pptx 文件,并且通过附加模块,它可以处理 xlsx 模板它的工作方式与模板引擎相同,您给它一个模板+一些数据,它就会输出一个生成的文档。原创 2024-08-04 14:35:12 · 1345 阅读 · 3 评论 -
深入浅出iframe(+ iframe嵌套第三方页面跨域带cookie问题)
iframe 标签规定一个内联框架。内联框架就是在一个页面中嵌入另一个页面。由于 iframe 可能在某些方面不符合标准网页设计的理念,已经被HTMLl5抛弃,目前的HTML5不再支持它了。原创 2023-08-30 14:44:38 · 6574 阅读 · 1 评论 -
JavaScript-生成二维码-qrcode
QRCode.js 是一个用于生成二维码的 JavaScript 库。主要是通过获取 DOM 的标签,再通过 HTML5 Canvas绘制而成,不依赖任何库。原创 2022-03-26 18:18:31 · 2779 阅读 · 0 评论 -
彻底搞懂blob对象,实现文件下载,文件分片技术
要创建对象URL可以使用window.URL.createObjectURL()方法传入File或Blob对象。这个函数返回的值是一个指向内存中地址的字符串。因为这个值是URL,可以在DOM中直接使用。对象URL,是指存储在File或Blob中数据的URL。对象的URL的优点是不用把文件内容读取到JavaScript也可以使用文件。一种标准,用来表示文档/文件/字节流的格式和性质。slice => 可以用来进一步分割数据。size => 二进制文件的大小。text => 读取blob的值。原创 2022-10-18 21:35:02 · 2727 阅读 · 1 评论 -
Pubsub(订阅与发布)、EventBus(事件总线)
用于组件之间通信,可以实现任意组件的通信发布订阅模式。原创 2022-06-09 20:40:32 · 506 阅读 · 0 评论 -
JavaScript- Map、Set、WeakMap、WeakSet、简单模拟Map
WeakSet结构与Set类似,也是不重复的值集合。Set类似于数组,但是里面成员的值都是唯一的。Map是一种键值对的结构。原创 2023-03-04 15:04:10 · 1273 阅读 · 0 评论 -
JS-谈谈你所理解的闭包
闭包是指指那些引用了另一个函数作用域中变量的函数下面看一个例子(JS高级程设计上的一个例子)let value1 = object1 [ propertyName ] // 在这里引用了外部函数的变量 propertyName let value2 = object2 [ propertyName ] if(value1 < value2) {🍓上面做标注的地方,引用了外部函数的变量,在这个内部函数被返回后,这个引用变量依旧存在。原创 2022-10-25 21:27:26 · 590 阅读 · 2 评论 -
for in 、for of详解
只要一个数据实现Iterator接口,这个数据就会有一个叫做[Symbol.iterator]的属性。上面有个enumerable属性,就是它来控制属性是否可枚举。3、遍历字符串 => 字符所处的位置下标。属性描述符 => enumerable。同时也会枚举对象原型上的可枚举的属性名。2、可以用来遍历数组 => 数组下标。1、可以用来遍历对象 => 属性名。2、遍历字符串 => 字符每一项。1、遍历数组 => 数组每一项。3、遍历map => 每一项。4、遍历set => 每一项。原创 2022-09-25 20:54:56 · 1609 阅读 · 7 评论 -
JavaScript-节流与防抖
🌰我们平时玩游戏,我们可以把放技能理解成节流,点的再快,也是有冷却时间的🌰防抖则是类似于回城。原创 2022-09-01 16:15:07 · 424 阅读 · 1 评论 -
JavaScript-函数方法apply()、call()、bind()
文章目录apply()和call()介绍二者的区别二者强大之处bind()介绍apply()和call()介绍函数的两个方法:apply()和call()。这两个方法都会指定的this值来调用函数。即会设置调用函数时函数体内this对象的值。apply()方法接受两个两个参数:函数内this的值和一个参数数组。第二个可以是Array的实例,但也可以时arguments对象。function sum (num1,num2){ return num1+num2}function sum2(nu原创 2022-05-07 09:24:23 · 290 阅读 · 0 评论 -
JavaScript-带你手写深拷贝与浅拷贝
如有错误,欢迎指出原创 2022-04-01 16:09:26 · 1096 阅读 · 0 评论 -
JavaScript 数组、栈、队列、链表详解
数组栈基于JavaScript对象的Stack类class stackArray { //构造函数,初始化栈,采用对象的方式存储, //也可以采用数组的方式储存,就可以使用数组的API来改写 //push和pop都可以拿来用的 //注意:这里top初始化为0 constructor() { this._stackArray = {} this._top = -1 } isEmpty(){ if(this._原创 2021-10-21 16:25:13 · 433 阅读 · 1 评论 -
ES6模块和CommonJS详解及二者的区别
文章目录ES6模块(介绍、特点)介绍特点export 与 importimportCommonJSCommonJS模块规范模块exportrequiremoduleES6模块和CommonJS的区别ES6模块(介绍、特点)介绍ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系,以及输入和输出的变量。ES6 的模块化分为导出(export) @与导入(import)两个模块。特点ES6 的模块自动开启严格模式,不管你有没有在模块头部加上 use strict;。模块中可以导入和导出原创 2022-03-02 21:43:20 · 1478 阅读 · 0 评论 -
JS-事件类型(事件流、鼠标事件、键盘事件、事件委托)
鼠标事件键盘事件事件委托原创 2021-11-29 20:55:16 · 639 阅读 · 0 评论 -
JS-Canvas绘图
基本的画布功能不要在style里面设置width和height(可能会出现位置坐标不准的问题),直接设置canvas的属性就好<canvas id="drawing" width="300" height="150" style="border:1px solid #d3d3d3;"></canvas>要想在画布上绘制图形,首先要获取绘图上下文。使用getContext()方法可以获取绘图上下文的引用。对于平面图形,传入2d即可。 let drawing = docume原创 2021-11-04 17:55:56 · 3234 阅读 · 0 评论 -
JS-迭代器与生成器
迭代器模式可以把有些结构称为”可迭代对象“,因为他们实现了正式的Iterable接口。而且可以通过Iterator进行消费可迭代对象不仅限于数组,也可以是具有类似数组行为的其他数据结构可迭代协议实现Iterable接口的内置类型字符串、数组、映射、arguments对象、NodeList等DOM集合类型接收可迭代对象的原生语言for-of循环、数组解构、拓展操作符、Array.from()、创建集合、Promise.all()接受由期约组成的可迭代对象、Promise.race()、yield原创 2021-10-26 21:55:36 · 124 阅读 · 0 评论 -
JS-函数(二)( 函数属性和方法、私有变量)
私有变量严格来说是没有私有变量。但是可以认为定义在任何函数或块中的变量是私有的。特权方法是能够访问函数私有变量的function MyObject(){ let privateVariable = 10 function privateFunction(){ return true } //构造函数中实现 this.publicMethod = function(){ privateVariable++ return privat原创 2021-10-21 16:46:34 · 280 阅读 · 0 评论