![](https://img-blog.csdnimg.cn/96788294dd234f35a63b90aac16968bb.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JavaScript
文章平均质量分 50
JavaScript从入门到进阶
z止于至善
这个作者很懒,什么都没留下…
展开
-
JS使用 Math.random() 生成随机数的方法汇总(不同范围、类型的随机数)
JS使用 Math.random() 生成随机数的方法汇总(不同范围、类型的随机数)转载 2023-11-15 17:11:31 · 13188 阅读 · 0 评论 -
一文掌握JS 事件循环(Event Loop)
本文详细讲解了浏览器和 NodeJS 中事件循环的流程,虽然底层机制不一样,但在最终表现上是基本一致的。理解事件循环的原理,可以帮助我们准确分析和运用各种异步形式,减少代码的不确定性,在一些执行效率优化上也能有明确的思路。在前端面试中,事件循环相关的内容也是高频出现的技术点,理解它也有助于提升面试通过率,增加面试信心。} , 0);转载 2022-11-09 10:16:41 · 3347 阅读 · 0 评论 -
一文获悉组件通信之——发布-订阅模式
使用发布-订阅模式的优点在于,监听事件的位置和触发事件的位置是不受限的,只要它们在同一个上下文里,就能够彼此感知。订阅操作是一个“写”操作,相应的,发布操作就是一个“读”操作。发布的本质是触发安装在某个事件上的监听函数,需要做的就是找到这个事件对应的监听函数队列,将队列中的。通过前面的讲解,不难看出发布-订阅模式中有两个关键的动作:事件的监听(订阅)和事件的触发(发布),这两个动作自然而然地对应着两个基本的。事件被触发时,事件会被“发布”出去,进而触发监听这个事件的。原创 2022-10-24 15:36:31 · 1240 阅读 · 2 评论 -
lodash中数组删除常用的api
综上, 是在开发中常用到的一些数组移除元素的方法,可以有效快捷地开发功能需求, 这些方法按以下条件可以区分一下.原创 2022-10-24 10:34:52 · 3916 阅读 · 0 评论 -
总结ES11—ES13新特性——提升开发效率
ES11——ES13新特性ECMAScript 是 JavaScript 的标准与规范,JavaScript 是 ECMAScript 标准的实现和扩展。原创 2022-08-05 10:37:02 · 1138 阅读 · 0 评论 -
lodash 开发中常用的api
lodash 开发中常用的apiisEmpty(value)说明检查value是否为一个空对象,集合,映射或者set。 判断的依据是除非是有枚举属性的对象,length 大于 0 的 arguments object, array, string 或类jquery选择器。参数value(*): 要检查的值。返回(boolean): 如果value为空,那么返回true,否则返回false。...原创 2022-04-06 11:13:10 · 866 阅读 · 0 评论 -
Fetch中Request.cache
Fetch API 提供了一个 JavaScript 接口,用于访问和操纵 HTTP 管道的一些具体部分,例如请求和响应。它还提供了一个全局 fetch() 方法,该方法提供了一种简单,合理的方式来跨网络异步获取资源。Request.cachecache 作为Request 接口只读属性包含着请求的缓存模式。它控制着请求以何种方式与浏览器的 HTTP 缓存进行交互。Value可选值:default — 浏览器从HTTP缓存中寻找匹配的请求。如果缓存匹配上并且有效( fresh), 它将直接原创 2022-03-05 18:07:49 · 828 阅读 · 0 评论 -
chrome浏览器下载base64图片
上文介绍了chrome浏览器打开base64图片,今天讲一下如何下载base64的图片。思路将base64转化成Blob通过Blob来下载代码实现base64转化成Blob/** * base64转Blob * @param {*} dataurl base64 */export function dataURLtoBlob(dataurl) { let arr = dataurl.split(','), mime = arr[0].match(/:(.*?)原创 2022-01-06 15:22:41 · 1102 阅读 · 0 评论 -
chrome浏览器打开base64图片
base64图片以data:开头的一个大字符串,如图:页面显示base64图片如果想要在页面显示base64图片,在img标签中使用src属性即可。<img src={info.avatar || require('../../../../assets/images/logo.png').default} style={{ width: 56, height: 56, borderRadius: '50%' }} />浏览器点击打开预览base64图片如果想要在浏览器点击打开预览b原创 2022-01-04 15:21:22 · 5521 阅读 · 0 评论 -
JavaScript公共库 一些公共的方法以及中国省市区数据(包括港澳台)
utils-libraryJS公共库 一些公共的方法Useagenpm安装库npm i @ethafeng/utils-library项目中引入该库中需要用到的函数 比如,isNumber()import { isNumber } from '@ethafeng/utils-library'使用processData = (n) => { isNumber(n) ? console.log(`${n}为数字`) : console.log(`${n}不是数字`)原创 2021-12-19 18:51:25 · 1129 阅读 · 0 评论 -
请求后台时对uri进行编码——即encodeURIComponent()的使用
当向后台请求get服务时,若url中带有#,浏览器会自动忽略,不会把它拼接在url后面,这个时候需要使用encodeURIComponent进行编码。为什么不能使用encodeURIencodeURI 自身无法产生能适用于HTTP GET 或 POST`` 请求的URI,例如对于 XMLHTTPRequests, 因为 "&", "+", 和 "="不会被编码,然而在GET和 POST请求中它们是特殊字符。使用encodeURIComponent这个方法会对这些字符编码。encodeUR原创 2021-12-14 18:54:34 · 4745 阅读 · 0 评论 -
moment()——当前时间前后几天时间戳获取
将当前时间转化为秒级时间戳moment(moment().format('YYYY-MM-DD') + ' 0:0:0').unix()或者new Date(moment().format('YYYY-MM-DD') + ' 0:0:0').getTime() / 10007天后时间转化为秒级时间戳moment(moment().add(7, 'days').format('YYYY-MM-DD') + ' 23:59:59').unix()...原创 2021-06-20 17:32:43 · 3614 阅读 · 0 评论 -
JavaScript 如何数组扁平化(6种实现方法)
数组扁平化:就是将多层级数组转化为一级数组(即提取嵌套数组元素最终合并为一个数组),使其内容合并且展开。下面是Lodash封装的数组扁平化API flattenDeep_.flattenDeep([1, [2, [3, [4]], 5]]);// => [1, 2, 3, 4, 5]明确需求:多维数组 => 一维数组let ary = [1, [2, [3, [4, 5]]], 6];// -> [1, 2, 3, 4, 5, 6]let str = JSON.stringi原创 2021-05-29 16:50:23 · 1171 阅读 · 0 评论 -
JavaScript 原型对象与原型链
1. 原型对象和构造函数的关系在JavaScript中,每当定义一个函数数据类型(普通函数、类)时候,都会天生自带一个prototype属性,这个属性指向函数的原型对象。当函数经过new调用时,这个函数就成为了构造函数,返回一个全新的实例对象,这个实例对象有一个__proto__属性,指向构造函数的原型对象。2. 原型链简述JavaScript对象通过__proto__指向父类对象,直到指向Object对象为止,这样就形成了一个原型指向的链条, 即原型链。对象的 hasOwnProperty原创 2021-05-14 17:29:09 · 127 阅读 · 0 评论 -
JavaScript判断数组中是否包含某个值
有下面几种方法可以实现:方法一:array.indexOf判断数组中是否存在某个值,如果存在,则返回数组元素的下标,否则返回-1。let arr=[1,2,3,4];let index=arr.indexOf(3);console.log(index);方法二:array.includes(searcElement[,fromIndex])此方法判断数组中是否存在某个值,如果存在返回true,否则返回falselet arr=[1,2,3,4];if(arr.includes(3))原创 2021-05-14 13:47:17 · 10093 阅读 · 0 评论 -
JavaScript 类数组arguments转化为数组方法
arguments本身并不能调用数组方法,它是一个另外一种对象类型,只不过属性从0开始排,依次为0,1,2…最后还有callee和length属性。我们也把这样的对象称为类数组。常见的类数组还有:用getElementsByTagName/ClassName()获得的HTMLCollection用querySelector获得的nodeList转化为数组的方法:最原始的方法就是再创建一个数组,用for循环把类数组的每个属性值放在里面。介绍一些好用的方法:1. Array.prototype原创 2021-05-14 11:17:05 · 808 阅读 · 0 评论 -
禁止浏览器回退
禁止浏览器回退js代码:function banBack() { window.history.pushState(null, null, document.URL); window.addEventListener("popstate", function () { window.history.pushState(null, null, document.URL); });}banBack()原创 2021-02-20 15:54:31 · 183 阅读 · 0 评论 -
ES6 for-of循环
强大的 for-of 循环这是最简洁、最直接的遍历数组元素的语法。这个方法避开了 for-in 循环的所有缺陷。与 forEach()不同的是,它可以正确响应 break、continue 和 return 语句。for-in 循环用来遍历对象属性。for-of 可以用来遍历的类型:for-of 循环用来遍历数据—-例如数组中的值for-of 循环不仅支持数组,还支持大多数类数组对象for-of 循环也支持字符串遍历,它将字符串视为一系列的 Unicode 字符来进行遍历它同样支持 M原创 2020-12-13 19:57:28 · 820 阅读 · 0 评论 -
JavaScript setTimeout()初试
setTimeout()初试setTimeout()延迟任务执行setTimeout(fn,t),超时调用,超过时间t,就执行fn。setTimeout(fn,t)中t告诉JS再过多久把当前任务添加到队列中,并不是执行的到setTimeout就添加任务。如果队列是空,那么添加的代码会立即执行;如果队列不空,那么它就要等前面的代码执行完了以后在执行。代码示例:setTimeout(() =...原创 2019-12-11 20:39:58 · 248 阅读 · 0 评论