
JavaScript
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
纯前端导出Excel
纯前端导出Excel,其他地方自行修改,这是例子,配合xlsx.full.min.js。原创 2024-03-19 15:15:57 · 365 阅读 · 1 评论 -
解析WORD
半成品,有部分没做解析,但是绝对没问题<!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"&g.原创 2021-07-30 18:01:23 · 11043 阅读 · 0 评论 -
纯HTML实现俄罗斯方块
【代码】纯HTML实现俄罗斯方块。原创 2024-01-18 10:15:22 · 745 阅读 · 0 评论 -
在线录屏-通过Web API接口轻松实现录屏
通常,在线录屏工具提供了丰富的功能,例如选择录制区域、添加音频注释、调整录制质量等,以满足用户的不同需求。通过 MediaDevices 接口,您可以使用 JavaScript 代码来获取和操作媒体设备的流(如音频和视频)。可以说是大部分不支持,毕竟是新的Web API接口,详细可以去MDN中查看MediaDevices - Web API 接口参考 | MDN (mozilla.org)通过这样的调用方式,您可以使用 MediaDevices 接口来获取媒体设备的流,并对其进行进一步的操作和处理。原创 2024-01-16 17:16:12 · 602 阅读 · 0 评论 -
手写webpack核心原理,支持typescript的编译和循环依赖问题的解决
因为循环依赖也只不过是形成递归,所以依赖图不局限于DAG,可以是任意有向图。因为待执行的代码中所有的路径都是相对路径,我们需要用。根据参考链接3,我们可以用“记忆化搜索”的思路,开一个全局变量。因为参考链接1写得很清晰了,本文仅定位为一个额外补充,不会写得很详细。属性应该设计为一个哈希表,而非直接设计为数组,下文会解释原因。怎么实现,因此这里编译ts的做法是直接判定入口文件的扩展名为。对象,其副作用为把整个文件的代码执行了一遍。对象的值是空的,但因为对象的浅拷贝特性,函数,它只不过起到一个拦截器的作用。原创 2024-01-16 16:35:44 · 1517 阅读 · 0 评论 -
【加强版】小学数学出题,加减乘除混合运算,支持自定义数字,一键打印
如需打印,在电脑本地上新建文本文档,粘贴代码后保存,然后把文件后缀改为.html运行,出题点击打印就可以了。5、小学数学没有负数,保证结果不出现负数。复制下面代码后到该地址预览即可。6、出题分列展示、新增答案下划线。1、支持加减乘除运算混合多选。2、支持自定义数字运算个数。4、支持一键打印成pdf。3、支持自定义出题数量。原创 2024-01-16 15:25:41 · 827 阅读 · 0 评论 -
阿里云盘自动签到-自动更新token免部署
并且开启自启动不需要开电脑、不需要任何成本!都是云运行!一次获取,理论上可以用很久。具体多久就得到时候测试看了使用方法:1.首先 打开wps云文档的连接 并且另存为 保存成你自己的!【金山文档】 阿里云签到模版-另存为2.点击【效率】-【高级开发】-【AirScript脚本编辑器】 查看 【阿里云盘签到】的 是否存在(如不存在请复制最下方的代码 放进去)3. 打开阿里云盘 :https://www.aliyundrive.com/ 登录后。原创 2024-01-16 14:40:21 · 7070 阅读 · 6 评论 -
【掘金js脚本】全自动签到,粘福,免费抽奖
全自动签到,粘福,免费抽奖原创 2023-06-26 08:58:41 · 2796 阅读 · 0 评论 -
全局监听ajax请求
【代码】全局监听ajax请求。原创 2022-11-07 18:07:30 · 591 阅读 · 3 评论 -
判断网络图片地址是否存在
【代码】判断网络图片地址是否存在。原创 2022-10-26 10:18:57 · 324 阅读 · 0 评论 -
DOM全屏Api requestFullscreen
设置全屏/*** [requestFullScreen 设置全屏]*/function requestFullScreen(id) { var de = document.getElementById(id); if (de.requestFullscreen) { de.requestFullscreen(); } else if (de.mozRequestFullScr...原创 2019-03-13 10:23:40 · 29954 阅读 · 0 评论 -
Javascript编程技巧 -- 函数记忆
当一些计算结果可以保留下来为以后的运算提供方便的时候, 就可以用到记忆话函数记忆化函数将计算结果存储起来,如果之后碰到相同的参数,就直接放回已经计算过的参数使用限制: 纯函数算法思想:空间换时间/** * 记忆化函数 */function memorize(func) { var cache = {}; return function() { //让参...原创 2019-03-13 13:59:05 · 10897 阅读 · 0 评论 -
BigInt:JavaScript 中的任意精度整数
Infinity的概念Infinity代表了超出JavaScript处理范围的数值。也就是说JS无法处理的数值都是Infinity。实践证明,JS所能处理的最大值是1.7976931348623157e+308,而最小值是5e-324。1、任何数值除以0都会导致错误而终止程序执行。但是在 JavaScript 中,会返回出特殊的值,因此不会影响程序的执行。2、比0大的数除以0,则会得到...原创 2019-03-13 11:41:06 · 11480 阅读 · 0 评论 -
ES2019 的新功能 flat()
flat()方法会递归到指定深度将所有子数组连接,并返回一个新数组。浏览器支持版本://depth指定嵌套数组中的结构深度,默认值为1。var newArray = arr.flat(depth)var arr1 = [1, 2, [3, 4]];arr1.flat(); // [1, 2, 3, 4]var arr2 = [1, 2, [3, 4, [5, 6]...原创 2019-03-18 16:24:43 · 31090 阅读 · 0 评论 -
尾调用和尾递归
尾调用 : 指函数最后一步调用另一个函数;为什么要用尾调用?尾调用优化代码的意义在哪里。 函数在调用的时候会在调用栈(call stack)中存有一条记录,每一条记录叫做一个调用帧(call frame),每调用一个函数,就向栈中push一条记录,函数执行结束后依次向外弹出,直到清空调用栈。 function a() { console.log('如果有帮助请点个赞,大兄弟')...原创 2019-03-13 10:06:08 · 10866 阅读 · 0 评论 -
常用js方法
/*======================================== 时间格式化 ========================================*/Date.prototype.Format = function(fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //.原创 2021-08-24 09:27:18 · 1490 阅读 · 0 评论 -
掘金签到快速抽奖方法
var ajax = new XMLHttpRequest();ajax.open('post','https://api.juejin.cn/growth_api/v1/lottery/draw',true);ajax.withCredentials = true;ajax.setRequestHeader('content-type','application/json; charset=utf-8');ajax.send(JSON.stringify({}));ajax.onreadyst.原创 2021-08-02 09:59:19 · 13678 阅读 · 0 评论 -
正则g模式下异常
描述:正则g模式下出现true和false交替原因:原创 2021-05-28 17:32:46 · 10899 阅读 · 0 评论 -
时钟罗盘
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{ margin:0; padding:0 } html,body{ width:100%; height:100%; background-color:#00.原创 2020-06-08 15:06:18 · 10894 阅读 · 0 评论 -
js实现sleep休眠
const sleep = ms =>{ return new Promise((res,rej)=>{ setTimeout(res,ms); })}sleep(2000).then(()=>{ alert("延时2s")})优化版const delay = ms =>{ return new Promise((res,rej)=>{ setTimeout(res,ms); })}async function .原创 2020-06-03 11:01:21 · 12315 阅读 · 0 评论 -
监听浏览器的返回事件,禁止浏览器返回
//禁止页面后退 history.pushState(null,null,document.URL);window.addEventListener('popstate',function(){ //监听浏览器的返回事件 history.pushState(null,null,document.URL); });原创 2020-06-03 10:41:43 · 11661 阅读 · 0 评论 -
JS new操作符执行之后背后的操作
const aa = new Function()1、创建一个新对象2、把构造函数的作用域赋给新对象(this指向)3、执行构造函数中的代码4,返回该新对象简单来说就是继承原创 2020-05-27 10:12:13 · 11027 阅读 · 0 评论 -
js代码优化(不定时更新)
1、避免多条件并列if (status === 'process' || status === 'wait' || status === 'fail') { doSomething()}这种写法语义性、可读性都不太好。可以通过switch case或includes这种进行改造。switch(status) { case 'process': case 'wait': case 'fail': doSomething()}const enum = ['pro原创 2020-05-27 09:37:45 · 11024 阅读 · 2 评论 -
JS格式化时间之后少了8个小时
var data = Date.parse("Tue May 26 16:53:31 CST 2020")网上搜了这个方法,发现还是不行,最后查了一下,是时区问题原因:new Date(CST)。new Date通过解析currentDateStr返回一个long类型的时间差(UTC时间)来构造日期对象,但这个解析的过程中,如果遇到CST,会被认为是指北美的时区,比格林威治时间(GMT)晚6个小时,按照转换关系,转成UTC需要加6个小时。而在输出receivedCurrentDate的时候...原创 2020-05-26 17:34:03 · 15968 阅读 · 0 评论 -
js本页导出Excel,下载
其实有其他作用,比如下载,跳转,都可以不用打开新窗口<iframe id="myFrameId" name="myFrameName" scrolling="no" frameborder="0"></iframe><a href="xxxx" target="myFrameName" id="exportWorkExcel" >跳转</a>...原创 2019-10-21 14:27:01 · 10798 阅读 · 0 评论 -
HTML5自定义右键菜单
<div id="opration" style="display:none;"> <ul> <li><a href="#" onclick="downloadFile()">download</a></li> <li><a href="#" onclick="openWindow()"&g...原创 2019-08-30 10:56:39 · 11839 阅读 · 0 评论 -
监听复制事件
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>监听复制</title></head><body> <div> 事件的默认行为与事件的来源和事件处理函数相关: 1.如果默认事件没有取消,就复制到选区(...原创 2019-08-30 10:52:30 · 12912 阅读 · 0 评论 -
JS手动实现一个new操作符
要手动实现一个 new 操作符,首先要知道 new 操作符都做了什么事,即构造函数的内部原理:1.创建一个新对象;2.链接到原型(将构造函数的 prototype 赋值给新对象的 __proto__);3.绑定this(构造函数中的this指向新对象并且调用构造函数)4.返回新对象这样我们就可以手动实现一个 new 方法了function realizeNew () { /...原创 2019-06-19 18:01:52 · 35184 阅读 · 6 评论 -
js检查数据类型的方法
1.typeof 这是最常用的基本数据类型检测的方法console.log(typeof ""); // stringconsole.log(typeof 1); // numberconsole.log(typeof true); // booleanconsole.log(typeof undefined); // undefinedc...原创 2019-06-19 17:38:43 · 34107 阅读 · 0 评论