刷新
【前端必会】tapable、hook,webpack的灵魂

博主头像 #背景 什么是tapable、hook,平时做vue开发时的webpack 配置一直都没弄懂,你也有这种情况吗? 还是看源码,闲来无聊又看一下webpack的源码,看看能否找到一些宝藏 tapable和webpack没有特定关系,可以先看下这篇文章,了解下这个小型库 https://webpack. ...

Javascript 手写 LRU 算法

博主头像 LRU 是 Least Recently Used 的缩写,即最近最少使用。作为一种经典的缓存策略,它的基本思想是长期不被使用的数据,在未来被用到的几率也不大,所以当新的数据进来时我们可以优先把这些数据替换掉。 一、基本要求 固定大小:限制内存使用。 快速访问:缓存插入和查找操作应该很快,最好是 O ...

Monaco Editor 中的 Keybinding 机制

博主头像 一、前言 前段时间碰到了一个 Keybinding 相关的问题,于是探究了一番,首先大家可能会有两个问题:Monaco Editor 是啥?Keybinding 又是啥? Monaco Editor: 微软开源的一个代码编辑器,为 VS Code 的编辑器提供支持,Monaco Editor 核心代 ...

语言基础---语法&关键字与保留字

博主头像 语法&关键字与保留字 本章篇幅较长故分成几个小节来讲 语法 区分大小写 这个没啥好讲的,a和A是两个变量。 标识符 标识符,就是变量、函数、属性或函数参数的名称。 标识符的组成规范,如下: 第一个字符必须是一个字母、下划线( _ )或者美元符号( $ ); 剩下的其他字符可以使字母、下划线、美元符号 ...

记录--关于【前端高级技巧】九个问题巩固知识

博主头像 这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 第一问:安全类型检测——typeof和instanceof 区别以及缺陷,以及解决方案 这两个方法都可以用来判断变量类型 区别:前者是判断这个变量是什么类型,后者是判断这个变量是不是某种类型,返回的是布尔值 (1)typeof 缺陷: 1 ...

不超过十行代码完成一个标准的深拷贝

首先来理解一下深拷贝与浅拷贝的概念 我们谈到深拷贝与浅拷贝都是针对于对象或者数组这种==复杂数据类型==,也就是引用数据类型 浅拷贝:只是对内存地址的拷贝,跟拷贝前指向的是同一块内存; 深拷贝:既拷贝了内存地址,又拷贝了数据内容,是在堆内存中重新开辟了一块存储空间. 内存分为栈内存跟堆内存,对于基本 ...

NFC读写器与浏览器Chrome

博主头像 随着NFC读写器在BS架构下的需求越来越多,使用JS语言在web浏览器下操作NFC读写器就变得尤其重要.但是web浏览器不允许其显示内容直接操作硬件,所以我们必须使用IC卡读卡器web插件来实现这个功能.作为web前端工程师,我们首先要了解在web中实现操作NFC读写器的步骤:1、下载友我科技IC卡 ...

JSON APIs and Ajax

JSON APIs and Ajax onclick 希望代码仅在页面完成加载后执行。 将名为DOMContentLoaded的 JavaScript 事件附加到 document 中。 以下是实现的代码: document.addEventListener('DOMContentLoaded', ...

Optional源码解析与实践

博主头像 NullPointerException在开发过程中经常遇到,稍有不慎小BUG就出现了,如果避免这个问题呢,Optional就是专门解决这个问题的类,那么Optional如何使用呢?让我们一起探索一下吧! ...

mapboxgl加载tiff

缘起 近期在项目中遇到这么一个需求,需要在地图上展示一组格网数据,格网大小为2m*2m,地图api用的mapboxgl。起初拿到这个需要感觉很easy,在地图上添加一个fill图层就好啦。把格网面数据添加到地图上之后,在大比例尺下显示正常,但是当地图层级小于15级时,渲染出的结果会消失。 简单理一下 ...

项目优化打包部署

博主头像 一、项目优化 1.去掉打印console 需求:在开发环境中,保留打印console;在生产上线环境,自动去掉打印console 使用步骤: 第一步:在项目根目录下,创建如下图两个配置文件 在.env.development中(开发环境变量) NODE_ENV=development 在.env.p ...

JavaScript——基础语法

博主头像 书写语法 输出语句 变量 数据类型 运算符 == 与 区别: ==: 1、判断类型是否一样,如果不一样,则进行类型转换 2、再去比较其值 : 1、判断类型是否一样,如果不一样,直接返回false 2、再去比较其值 类型转换: * 其他类型转为number:(一般使用parseInt) 1、strin ...

【前端必会】不知道webpack插件? webpack插件源码分析BannerPlugin

博主头像 #背景 不知道webpack插件是怎么回事,除了官方的文档外,还有一个很直观的方式,就是看源码。 看源码是一个挖宝的行动,也是一次冒险,我们可以找一些代码量不是很大的源码 比如webpack插件,我们就可以通过BannerPlugin源码,来看下官方是如何实现一个插件的 希望对各位同学有所帮助,必要 ...

Java Script 原型链原理

博主头像 所有对象都有隐式原型; 原型也是对象,也有隐式原型. function User() {}console.log(User.prototype); function User() {}var u = new User();console.log(u.hasOwnProperty); Object.p ...

Pjax 下动态加载插件方案

博主头像 在纯静态网站里,有时候会动态更新某个区域往会选择 Pjax(swup、barba.js)去处理,他们都是使用 ajax 和 pushState 通过真正的永久链接,页面标题和后退按钮提供快速浏览体验。 但是实际使用中可能会遇到不同页面可能会需要加载不同插件处理,有些人可能会全量选择加载,这样会导致加 ...

123···50>