javascript
文章平均质量分 96
前端江湖
前端
展开
-
使用jscpd统计项目中的代码重复度
jscpd工具的使用是非常简单的,只需要少许配置就能输出比较直观的代码数据,方便我们统计代码的重复度。知道了项目中的重复代码,给我们优化代码结构,提炼代码逻辑,增强代码的可维护性、可扩展性和可复用性方面,都能带来比较多的好处,研发效率的提高也是随之而来的。原创 2023-03-21 14:33:18 · 2628 阅读 · 0 评论 -
nodejs升级引起的构建错误:0308010C:digital envelope routines::unsupported
本文详细描述了nodejs升级后引起的前端老旧项目中构建工具生成hash报错的问题(0308010C:digital envelope routines::unsupported),以及给出的几种解决方案。这几种解决方案各自都存在一些不完美的地方,但都能解决当前构建错误,可以根据自己的实际需求来确定使用哪种方案。原创 2023-02-22 13:45:00 · 10098 阅读 · 9 评论 -
URL和URLSearchParams对象使用详解
URL,称为统一资源定位器,指互联网上能找到资源定位的字符串。在一般语境中,又称网络地址或链接,当我们需要访问某个网页就需要输入对应的网址字符串,而这个网址就是URL。本文将详细介绍前端开发中遇到的两个API,URL和URLSearchParams对象的相关知识点,以及如何使用它们。原创 2023-02-20 16:08:02 · 9062 阅读 · 0 评论 -
JS图片对象转换函数(File\DataURL\ObjectURL\Image\Canvas)
前端开发中图片类对象,常会在 File、Image、Canvas 、DataURL(Base64)、ObjectURL(BlobURL)、Blob、ImageBitmap之间展开。本文将提炼出前端图像文件操作中存在的各个对象之间的转换方法,而通过不同的形式加载不同的图像资源,有助于我们展示图片或者处理图像数据。原创 2023-02-07 11:10:36 · 2362 阅读 · 0 评论 -
Javascript中的图像数据对象:Image、ImageData 和 ImageBitmap
前端处理图片数据,有几个常用的API,如Image、ImageData、ImageBitmap等。这些对象可以为我们操作图片带来较大帮助,方便我们更好的利用JavaScript来加载图像资源,并控制图像像素点,进行一些处理操作。原创 2023-01-16 10:06:50 · 11094 阅读 · 0 评论 -
Web前端实现一个图片放大镜
基本完成了一个可以非固定尺寸、动态加载图片的放大镜功能。动态加载图片,可以不用考虑图片的像素宽高,任意尺寸的图片都可以完整放大,缩略小图和预览大图也可以是同一张图片。原创 2022-12-06 10:30:33 · 3133 阅读 · 0 评论 -
JavaScript数组(四):判断数组相等的4种方法
如果我们需要比较两个数组是否相等,不能像比较基本类型(String、Number、Boolean等)一样,使用===(或==) 来判断,所以如果要比较数组是否相等,需要使用一些特殊方法。原创 2022-12-02 12:33:36 · 25197 阅读 · 0 评论 -
JavaScript数组的特别之处(三):类数组对象详解
本文描述了什么是类数组对象,它的主要特点,以及如何创建一个类数组对象,还有将类数组对象转换成真正数组的几种方式,接着也介绍了前端开发中可能会遇到的已有的各种类数组对象。事实上,绝大部分的类数组对象是不需要专门去转换为数组的,直接遍历操作即可,但深入掌握这些类数组的知识,也是前端开发中不可少的。原创 2022-11-30 09:51:02 · 624 阅读 · 0 评论 -
JavaScript数组的特别之处(二):构造函数、空元素等
我们需要知道的是,数组的索引虽然可以像对象一样,当做键名字符串使用,但它们还是有所区别的。数组是按照数字的顺序进行排列的集合,而对象的属性名则是无序的。原创 2022-11-28 09:45:21 · 408 阅读 · 0 评论 -
JavaScript中数组的特殊之处(一)
数组作为基础的语法知识,大部分人都已经非常熟悉了。本文将不会介绍它的基础语法和用法,而是从JavaScript中数组的一些特殊之处入手,通过这些少有的特性介绍,更加加深我们对数组知识的理解。原创 2022-11-25 08:16:08 · 439 阅读 · 0 评论 -
web前端文件上传可选择的4种方式
本文总结了前端web当前能够添加读取文件的4种方式,如果我们需要开发一个比较完善的图片上传组件,那么可能需要点击、拖拽、粘贴多种功能,这就需要使用到前三种文件读取方式。文件系统访问API鉴于兼容性还有待提升,我们可以作为后备的方案使用。有了文件读取的方式,那我们要完成上传功能,就可以使用HTML表单提交,或者FormData对象上传了。原创 2022-11-23 10:00:31 · 11561 阅读 · 0 评论 -
前端JS获取图片文件的真实格式
浏览器支持的图片格式中,除了svg以外,其他几种位图格式,都可以较好的通过读取图像二进制数据的方式判断出图片文件的真实格式,能够防止文件伪造绕开判断,造成不必要的异常等问题。原创 2022-11-17 16:21:22 · 3909 阅读 · 0 评论 -
如何快速实现一个颜色选择器
目录颜色模型HSV 与 HSL 的区别实现选择器色相计算色相柱的滑块位置饱和度和明亮度计算这两个值hsv转rgb透明度基于HSL的颜色选择器使用canvas设置面板在做前端界面开发的时候,遇到需要改变颜色的需求,就需要使用颜色选择器。针对这个问题,第一想法,自然是H5提供了input color,可以实现。但不出意外的,IE并不支持。而且,chrome的实现方式和firefox也不太一样,见下图:左图是chrome的,浏览器自身实现的一个颜色选择器控件原创 2022-01-21 10:12:50 · 2295 阅读 · 0 评论 -
搞懂JavaScript中的进制与进制转换
进制介绍JavaScript 中提供的进制表示方法有四种:十进制、二进制、十六进制、八进制。对于数值字面量,主要使用不同的前缀来区分:十进制(Decimal):取值数字 0-9;不用前缀。二进制(Binary):取值数字 0 和 1 ;前缀 0b 或 0B。十六进制(Hexadecimal):取值数字 0-9 和 a-f ;前缀 0x 或 0X。八进制(Octal):取值数字 0-7 ;前缀 0o 或 0O (ES6规定)。需要注意的是,非严格模式下浏览器支持:如果有前缀0并且后原创 2022-01-23 11:19:17 · 1291 阅读 · 0 评论 -
如何开发一个chrome浏览器插件
chrome插件又称扩展程序,主要基于前端技术开发,用于扩展浏览器功能的一类软件程序,可以附加在chrome浏览器上运行。本文将通过开发一个书签整理的简单插件,介绍如何实现一个chrome插件。原创 2022-11-11 11:06:54 · 4561 阅读 · 0 评论 -
Nuxtjs实现服务端渲染和静态化站点
Nuxt.js是一个基于Vue的增加了node服务的通用框架,本文就是介绍使用它如何实现可以解决Vue项目的服务端渲染,以及生成纯静态化的站点。原创 2022-11-09 10:29:27 · 2074 阅读 · 0 评论 -
JavaScript中的Error错误对象与自定义错误类型
Error是JavaScript中最原始的错误对象,作为各种异常的基础对象,还有多个衍生的具体的错误类型,也可以自定义错误类型对象。原创 2022-11-04 10:08:25 · 3477 阅读 · 0 评论 -
一步步实现前端图片裁剪功能
本文基于前端JS和H5,从图片上传加载、裁剪框的展示、拖动缩放到canvas图片裁剪、显示新图片等,实现一个完整的图片裁剪功能原创 2022-11-02 14:44:53 · 4584 阅读 · 0 评论 -
详解前端二进制:Blob、File、FileReader、ArrayBuffer、TypeArray、DataView
本文将介绍一些前端二进制数据处理相关的API知识,如Blob、File、FileReader、ArrayBuffer、TypeArray、DataView等等。原创 2022-10-31 17:34:13 · 4857 阅读 · 0 评论 -
转义字符是什么?前端开发中需要了解的
转义字符从字面上讲,就是能够转变字符原本的意义,得到新的字符。常用在特殊字符的显示以及特定的编码环境中。除了反斜杠以外,在前端开发中,还有其他几种转义字符,也是较常见的,本文将对这些做一个总结。原创 2022-08-19 14:24:23 · 3830 阅读 · 0 评论 -
深入理解Base64字符串编码知识
Base64是一种索引编码,每个字符都对应一个索引,具体的关系图,如下:这也是名称中64的由来。将二进制数据转为字符串(ASCII码),方便数据传输。浏览器能直接展示Base64编码图片,减少请求。原创 2022-08-15 12:10:59 · 1742 阅读 · 0 评论 -
前端需要搞懂的字符编码ASCII、Unicode、UTF8、UTF16等
在前端开发中,Javascript程序是使用Unicode字符集,Javascript源码文本通常是基于UTF-8编码。但js代码中的字符串类型是UTF-16编码的,这也是为什么会碰到api接口返回字符串在前端出现乱码,因为多数服务都使用utf-8编码,前后编码方式不一致。...原创 2022-06-22 09:45:37 · 3027 阅读 · 0 评论 -
详解JSON.parse 和 JSON.stringify
JSON格式,(简写JavaScript Object Notation),是一种用于数据交换的文本格式,书写简单。基于JavaScript原生语法,能够序列化对象、数组、数值、字符串、布尔值和 null。在ES5中,增加了一个JSON对象,专门用原创 2022-01-25 09:16:00 · 13714 阅读 · 0 评论 -
一文搞懂js中的typeof用法
typeof运算符是 javascript的基础知识点,尽管它存在一定的局限性(见下文),但在前端js的实际编码过程中,仍然是使用比较多的类型判断方式。因此,掌握该运算符的特点,对于写出好的代码,就会起到很大的帮助..原创 2021-11-09 09:53:28 · 1004 阅读 · 0 评论 -
禁止触摸屏触控板手指缩放,需要这样处理
要禁止触控板的缩放行为,需要处理鼠标滚轮事件:wheel。要禁止触摸屏的手指缩放,可以使用如下的CSS和JS两种方法。原创 2021-12-31 15:40:22 · 3320 阅读 · 1 评论