
Other
文章平均质量分 51
一些好玩的东东
SeriousLose
✎﹏小飞飞 认真你就输了,一直认真你就赢了
展开
-
get(obj, “a.b[0].c“, 0)
/ 实现一个 get 函数,get(obj, chain, defaultVal)get(obj, "a.b[0].c", 0) // 输出 1。get(obj, "a.b.c", 0) // 输出 0。💡 未做异常处理,请注意;原创 2022-11-09 13:02:16 · 1125 阅读 · 0 评论 -
Error URIError
浏览器url上拼接上(原创 2022-09-05 18:27:05 · 1064 阅读 · 0 评论 -
JS Regex
中国手机号(最宽松), 只要是1开头即可, 如果你的手机号是用来接收短信, 优先建议选择这一条。大于等于0, 小于等于150, 支持小数位出现5, 如145.5, 用于判断考卷分数。中国手机号(宽松), 只要是13,14,15,16,17,18,19开头即可。最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符。二代身份证号(18位数字),最后一位是校验位,可能为数字或字符X。微信号,6至20位,以字母开头,字母,数字,减号,下划线。用户名正则,4到16位(字母,数字,下划线,减号)...原创 2022-08-30 13:19:22 · 1430 阅读 · 0 评论 -
Nvm的使用
自动执行项目下的 .nvmrc 文件,自动切换node对应环境;根目录下创建 .nvmrc 文件。切换使用指定的node版本。安装最新稳定版 node。设置默认的node版本。写入自动切换的版本号。安装指定node版本。删除已安装的指定版本。...原创 2022-08-29 18:00:38 · 1563 阅读 · 0 评论 -
Android 登录Notion
需要手机🪜。notion原创 2022-07-25 01:27:34 · 1114 阅读 · 5 评论 -
Data URL
Data URI使用 data URI 来呈现一些较长的内容,如一串二进制数据编码、图片等,采用 base64 编码可以让内容变得更加简短。 而对图片来说,在 gzip 压缩之后,base64 图片实际上比原图 gzip 压缩要大,体积增加大约为三分之一,所以使用的时候需要权衡。data:[<mime type>][;charset=<charset>][;base64],<encoded data>data: 协议头,它标识这个内容为一个 data UR原创 2022-05-24 23:57:10 · 39718 阅读 · 0 评论 -
Linked List
链表(Linked list)链表(Linked list)是一种常见的基础数据结构,是一种线性表, 但是并不会按线性的顺序储存数据,而是在每一个节点里存到下一个节点的指针(Pointer)。 由于不必须按顺序储存,链表在插入的时候可以达到 o(1)的复杂度, 比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要 o(n)的时间, 而顺序表响应的时间复杂度分别是 o(logn)和 o(1)优点无需预先分配内存 插入/删除节点不影响其他节点,效率高(典型的例子:git原创 2022-05-24 09:37:41 · 304 阅读 · 0 评论 -
NG AOT & JIT
Angular 应用主要由组件及其 HTML 模板组成。 由于浏览器无法直接理解 Angular 所提供的组件和模板,因此 Angular 应用程序需要先进行编译才能在浏览器中运行.<aside> 💡 即时编译(JIT,Just in time),它会在运行期间在浏览器中编译你的应用。 预先编译(AOT,Ahead of time),它会在构建时编译你的应用。</aside><aside> 💡 运行ng build(仅编译)或者 ng serve(编译并..原创 2022-05-03 15:23:35 · 698 阅读 · 0 评论 -
Chrome 禁止调试
noDebugger.jslet onDebug = function () { document.write('检测到非法调试!请你停止调试后刷新本页面!');};setInterval(function () { let st, et; st = new Date().getTime(); et = new Date().getTime(); if ((et - st) > 1000) { onDebug(); }},原创 2022-05-01 22:50:32 · 2112 阅读 · 0 评论 -
Sourcestree Revert
方式 操作 备注 重置提交 回滚 点击历史分支节点,重置提交到历史分支节点,选择硬合并; 点击当前分支节点,重置提交到当前分支节点,选择软合并; 提交本地分支推送回滚更改到远程分支。 重置提交,实现回滚 重置提交 回滚(不建议) 点击历史分支节点,重置提交到历史分支节点,选择硬合并; 点击当前分支节点,重置提交到当前分支节点,选择软合并; 删除当前分支对应的远程分支; 重新推送最新本地分支 .原创 2022-04-29 12:50:44 · 624 阅读 · 0 评论 -
Chrome Overrides
Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.https://serious-lose.notion.site/Chrome-Overrides-48d13f823d494612abbd8d716aff7a11原创 2022-04-26 22:47:51 · 711 阅读 · 0 评论 -
PicGo Github图床设置
下载PicGoIndex of /github-release/Molunerfinn_PicGo/安装PicGoGithub创建仓库创建项目; 设置为私有库比较好; 创建 获取Github访问tokenSign in to GitHub · GitHub 点击 Generate new token 按钮 身份验证框,需要输入你的Github密码验证 token名称,说明token使用; 只设置repo即可; 创建; 记得复制生成的token并保存好; .原创 2022-04-09 21:05:23 · 817 阅读 · 2 评论 -
Browser Core
浏览器 内核(排版引擎) Javascript引擎 Chrome Webkit V8 Firefox Gecko SpiderMonkey Safari Webkit javaScriptCore Opera webkit Caraka Edge EdgeHTML Chakra IE11 Trident Chakra IE10 Trident Chakra IE9 Tride原创 2022-04-05 00:06:36 · 541 阅读 · 0 评论 -
Block insecure private network requests
不安全的私有网络访问chrome更新到94之后,会自动阻止发送不安全的 内网 请求(参考资料)复现问题从 微盟 发送请求到 http://localhost:8009 的时候,就会被阻止,并且报这样的错: net::ERR_FAILED(ERR_FAILED)(How to fix Chrome block your insecure private network requests)报错Access to fetch at ‘...’ from origin ‘’ ha..原创 2022-03-10 09:34:47 · 19382 阅读 · 2 评论 -
NPM nrm
nrmnrm安装npm install -g nrm查看nrm ls添加nrm add 源名称 源地址切换nrm use 源名称删除源nrm del 源名称测试速度nrm test npm原创 2022-02-21 22:08:06 · 293 阅读 · 0 评论 -
排序数字英文字母交错,由小到大
/** * @description: 排序数字英文字母交错,由小到大 * @param {type} 如:[1,’a’,2,’b’,3,’c’,’d’,’e'] * @return: */ const array = ['z', 's', 'g', 'h', 'i', 'j', 'f', 's', 16, 66, 36, 616, 6, '', 0]; const test4 = (arr = []) => { let newAry = []; // 新数组.原创 2022-02-15 15:25:52 · 241 阅读 · 0 评论 -
JS Addition
杜绝0.1 + 0.2 =0.30000000000000004 问题;function add(num1, num2) { const num1Digits = (num1.toString().split('.')[1] || '').length; const num2Digits = (num2.toString().split('.')[1] || '').length; const baseNum = Math.pow(10, Math.max(num1Digits, num2原创 2022-02-15 14:38:43 · 330 阅读 · 0 评论 -
ECMAScript6 编码规范
规范内容声明 1.1 变量 对于只在当前作用域下有效的变量,应使用let来代替var 对于全局变量声明,采用var,但应避免声明过多全局变量污染环境 // 不好const variables; const globalObj = null; // 不是定义一个常量let globalObj = null; for (var i=0; i<5; i++) { console.log(i);}console.log(i);// 好let variable转载 2022-01-17 13:53:34 · 223 阅读 · 0 评论 -
Dart 5-Day
++ —— 自增 自减在赋值运算里面 如果++ -- 写在前面 这时候先运算 再赋值,如果++ --写在后面 先赋值后运行运算// 示例一var a=10;var b=a--;print(a); //9print(b); //10// 示例二var a=10;a++; // a=a+1;print(a);// 示例三var a=10;a--; // a=a-1;print(a);// 示例四var a=10;var b=a++;print(a); // 11原创 2022-01-14 20:42:18 · 162 阅读 · 0 评论 -
Dart 4-Day
算术运算符// + - * / ~/ (取整) %(取余)int a=13;int b=5;print(a+b); //加print(a-b); //减print(a*b); //乘print(a/b); //除print(a%b); //其余print(a~/b); //取整var c=a*b;print(c);关系运算符// == != > < >= <=int a=5;int b=3;print(a==b); //判断是否相等p原创 2022-01-14 15:27:16 · 132 阅读 · 0 评论 -
Mac Item2
标签 ⌘ T Command - T 新建标签 ⌘ W Command - W 关闭标签 ⌘ 数字 Command - 数字 切换标签 ⌘ 左右 Command - 左右 切换标签 ⌘↩ Command - enter 切换全屏 ⌘ F Command - F 查找 分屏 ⌘ D Command - D 垂直分屏 ⌘⇧ D Command - Sh..原创 2022-01-13 18:32:15 · 208 阅读 · 0 评论 -
XMLHttpRequest
若Ajax请求是由jQuery的$.ajax发起的,默认情况下可以使用 jQuery的Global Ajax Event Handlers监听到Ajax事件 兼容性 IE 9+、Chrome 15+、FireFox 11+、Edge、Safari 6.1+、Opera 12.1+ 监听所有请求(function () { if (typeof window.CustomEvent === 'function') return false; function CustomEv原创 2021-12-31 11:09:22 · 1122 阅读 · 0 评论 -
js实现最小堆
// 最小堆 class MinHeap { constructor() { this.heap = []; // 堆以数组表示 } /** * @description: 插入操作 * @param {*} val */ insert(value) { this.heap.push(value); this.moveUp(this.heap.length - 1); } /**...原创 2021-12-17 16:23:16 · 693 阅读 · 0 评论 -
最小堆概念
最小堆,是一种经过排序的完全二叉树,其中任一非终端节点的数据值均不大于其左子节点和右子节点的值。原创 2021-12-15 16:11:44 · 866 阅读 · 0 评论 -
Github Actions
GitHub Actions 是 GitHub 的持续集成服务,持续集成由很多操作组成,比如抓取代码、运行测试、登录远程服务器、发布到第三方服务等等,GitHub 把这些操作称为 actions。 workflow (工作流程):持续集成一次运行的过程,就是一个 workflow。 job (任务):一个 workflow 由一个或多个 jobs 构成,含义是一次持续集成的运行,可以完成多...原创 2021-11-22 17:22:14 · 516 阅读 · 0 评论 -
npkill(安全快速的清理电脑上的 node_modules)
npkill 快速清理沉重的 node_modules 全局安装 npm i -g npkill 进入想清理的文件夹 cd 文件路径 输入npkill 会自动查找该文件中node-models 光标上下移动来选择要清理的目录,释放宝贵的空...原创 2021-11-03 09:34:38 · 1933 阅读 · 5 评论 -
Git Branch Mode(分支模式)
代码分支模式: 主干开发模式(Trunk Based Development) 特性分支开发模式(Feature Branch Development) 特性分支开发模式 介绍 特性分支开发模式是指为一个或多个特定的需求 / 缺陷 / 任务创建代码分支(branch), 在其上完成相应的开发(一般经过增量测试)后,把它合并(merge)到主干 ...原创 2021-10-29 10:06:02 · 583 阅读 · 0 评论 -
七牛云使用文档
1.x 文档 2.x 文档 下载示例 1.x概述Qiniu-JavaScript-SDK (下文简称为 JS-SDK)适用于 IE8+、Chrome、Firefox、Safari 等浏览器,基于七牛云存储官方 API 构建,其中上传功能基于 Plupload 插件封装。开发者基于 JS-SDK 可以方便的从浏览器端上传文件至七牛云存储,并对上传成功后的图片进行丰富的数据处理操作。不考虑兼容性的情况下,如手机端,建议直接使用 Formdata 结合七牛表单上传的方式上传文件。Qiniu-Java.原创 2021-08-31 09:06:29 · 2189 阅读 · 0 评论 -
Data URL
Data URI 使用 data URI 来呈现一些较长的内容, 如一串二进制数据编码、图片等,采用 base64 编码可以让内容变得更加简短。 而对图片来说,在 gzip 压缩之后,base64 图片实际上比原图 gzip 压缩要大,体积增加大约为三分之一,所以使用的时候需要权衡。 data:[<mime type>][;charset=&l...原创 2021-07-22 10:08:37 · 992 阅读 · 0 评论 -
Decorator(装饰器)
Decorator(装饰器) 装饰者模式就是一种在不改变原类和使用继承的情况下,动态地扩展对象功能的设计理论。 优点 代码可读性变强了,装饰器命名相当于一个注释 在不改变原有代码情况下,对原来功能进行扩展 修饰对象 2种 类的装饰 类属性的装饰 ...原创 2021-07-07 14:38:21 · 294 阅读 · 0 评论 -
HTML Img(Type)
JPEG JPEG 是由 Joint Photographic Experts Group 所开发出的一种图片。 它最大的特点是 有损压缩。这种高效的压缩算法使它成为了一种非常轻巧的图片格式。 另一方面,即使被称为“有损”压缩,JPG 的压缩方式仍然是一种高质量的压缩方式: 当我们把图片体积压缩至原有体积的 50% 以下时,JPG 仍然可以保持住 60% 的品质。 此外,JPG 格式以 24 位存储单个图,可以呈现多...原创 2021-07-06 16:10:04 · 742 阅读 · 0 评论 -
HTML Img Compression(压缩)
图片压缩又分为有损压缩和无损压缩。 有损压缩 有损压缩指在压缩文件大小的过程中,损失了一部分图片的信息,也即降低了图片的质量(即图片被压糊了),并且这种损失是不可逆的。 常见的有损压缩手段是按照一定的算法将临近的像素点进行合并。 压缩算法不会对图片所有的数据进行编码压缩,而是在压缩的时候,去除了人眼无法识别的图片细节。 因此有损压缩可以在同等图片质量的...原创 2021-07-06 16:03:59 · 861 阅读 · 0 评论 -
Parcel(打包)
Parcel Parcel 是一款完全零配置的前端打包器, 它提供了 “傻瓜式” 的使用体验,我们只需了解它提供的几个简单的命令,就可以直接使用它去构建我们的前端应用程序了 Parcel 是 2017 年发布的,出现的原因是因为当时的 Webpack 使用过于烦琐,文档也不是很清晰明了, 所以 Parcel 一经推出就迅速被推上风口浪尖。 其核心特点就是: 真正做...原创 2021-06-30 11:15:02 · 1500 阅读 · 0 评论 -
Modularity(模块化-CMD规范)
第四阶段:CMD规范 CMD规范是阿里的玉伯提出来的,实现js库为sea.js。 它和requirejs非常类似,即一个js文件就是一个模块, 但是CMD的加载方式更加优秀,是通过按需加载的方式,而不是必须在模块开始就加载所有的依赖。 优点: 同样实现了浏览器端的模块化加载。 可以按需加载,依赖就近。 缺点: 依...原创 2021-06-22 12:00:00 · 274 阅读 · 0 评论 -
Modularity(模块化-AMD规范)
第三阶段: AMD规范(Asynchronous Module Definition:异步模块定义) CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。 AMD规范则是非同步加载模块,允许指定回调函数。 由于Node.js主要用于服务器编程,模块文件一般都已经存在于本地硬盘,所以加载起来比较快,不用考虑非同步加载的方式,所以CommonJS规范比较适用。 ...原创 2021-06-22 11:09:13 · 203 阅读 · 0 评论 -
Modularity(模块化-CommonJS规范)
第二阶段: CommonJS规范 CommonJS就是一个JavaScript模块化的规范,该规范最初是用在服务器端的node的,前端的webpack也是对CommonJS原生支持的。 根据这个规范,每一个文件就是一个模块,其内部定义的变量是属于这个模块的,不会对外暴露,也就是说不会污染全局变量。 CommonJS的核心思想就是通过 require 方法来同步加载所要依赖的其他模块,然后通过 ex...原创 2021-06-21 14:55:07 · 166 阅读 · 0 评论 -
Modularity(模块化-无模块化)
第一阶段:无模块化 简单的将所有的js文件统统放在一起。但是这些文件的顺序还不能出错,比如jquery需要先引入,才能引入jquery插件,才能在其他的文件中使用jquery。 优点: 相比于使用一个js文件,这种多个js文件实现最简单的模块化的思想是进步的。 缺点: 模块直接在全局工作,大量模块成员污染全局作...原创 2021-06-21 14:50:49 · 269 阅读 · 0 评论 -
Modularity(模块化)
模块化的好处 可维护性, 每一个模块都是独立的。 良好的设计能够极大的降低项目的耦合度。 以便于其能独立于别的功能被整改。 至少维护一个独立的功能模块,比维护一坨凌乱的代码要容易很多。 减少全局变量污染, 前端开发的初期,我们都在为全局变量而头疼,因为经常会触发一些难以排查且非技术...2021-06-21 14:47:22 · 550 阅读 · 0 评论 -
Scope(作用域)
var a= 0; if(true){ console.log(a); // function a(){} 因为块中函数声明提升 a = 1; // 块作用域中 a = 1; windows.a = 0; // 函数声明提升; // 特殊处理了,为了兼容ES3语法规范,会把当前的对a操作映射到全局作用域中(a = 1),但是这个代码之后,操作就和全局没有任何关系了。 function a(){}; // a = 1; windwos.a = 1; ...原创 2021-05-22 21:10:38 · 321 阅读 · 0 评论 -
Browser-Bookmark-Codeing
在线编辑器 CodePen https://codepen.io/ 在线编码,以及在线示例 CodeSandbox https://codesandbox.io/ StackBlitz ...原创 2021-05-18 10:31:57 · 167 阅读 · 0 评论