JavaScript
前端老实人
一名前端狂热爱好者,有需要资料或者有问题的同学可以直接私信我哦,做你的私人小家教!
展开
-
vue内嵌iframe跨域页面传参
公司的一个平台为方便第三方平台接入页面,需要写成可以单页面引入的方式。涉及到跨域访问页面,以及页面多余属性的隐藏。原创 2023-02-28 13:42:54 · 2764 阅读 · 0 评论 -
堆和栈详解js
堆内存中的对象不会随方法的结束而销毁,即使方法结束后,这个对象还可能被另一个引用变量所引用(方法的参数传递时很常见),则这个对象依然不会被销毁,只有当一个对象没有任何引用变量引用它时,系统的垃圾回收机制才会在核实的时候回收它。相比于堆来说存取速度会快,并且栈内存中的数据是可以共享的,例如同时声明了var a = 1和var b =1,会先处理a,然后在栈中查找有没有值为1的地址,如果没有就开辟一个值为1的地址,然后a指向这个地址,当处理b时,因为值为1的地址已经开辟好了,所以b也会同样指向同一个地址。原创 2023-01-12 18:12:48 · 6554 阅读 · 1 评论 -
js函数调用下载文件链接
代码】js函数调用下载文件链接。原创 2022-07-22 13:53:26 · 1305 阅读 · 0 评论 -
原生JavaScript批量下载文件压缩包
想要实现批量下载压缩包需要有以下三个js文件对应JSZipUtils文件地址:jszip-utils/jszip-utils.js at master · Stuk/jszip-utils · GitHub 对应JSZip文件地址:jszip/jszip.js at main · Stuk/jszip · GitHub对应FileSaver文件地址:jszip/vendor at main · Stuk/jszip · GitHub对应JSZip官网:How to use JSZip把下方代码包裹在一个点击原创 2022-06-26 21:23:57 · 1465 阅读 · 0 评论 -
Vue.js只刷新一次页面
判断上次的页面这次刷新的路由是否一样,不一样才刷新。 mounted: function() { if (location.href.indexOf("#reloaded") == -1) { location.href = location.href + "#reloaded"; location.reload(); } },或者判断上一个页面是不是登录页,是原创 2022-01-22 17:46:06 · 1298 阅读 · 2 评论 -
js数组有数据但是数组长度为0
onMarkerMap(d) { var objString = JSON.stringify(d); var datas = JSON.parse(objString); console.log(datas,'datas');}原创 2022-01-21 13:56:43 · 7588 阅读 · 2 评论 -
JavaScript性能优化方案,你知道几个?
JavaScript是手机和网页应用开发中的通用语言。 由于JavaScript的流行,为了提高应用程序的性能,它的优化变得越来越必要。 让我们来认识一些与JavaScript相关的挑战,以及如何优化js的性能。 典型的js性能挑战有许多因素会影响JavaScript的性能。 以下是与js性能相关的常见问题: 事件处理质量差: 正确使用事件处理程序可以通过减少调用堆栈的深度来提高JavaScript的性能。 跟踪所有事件处理程序是很重要的,这样处理程序就不会在您不知道的情况下执行...原创 2021-12-21 15:34:57 · 5287 阅读 · 14 评论 -
js获取当前日期时间 YYYY-MM-dd HH:MM:SS
获取当前时间 格式:yyyy-MM-dd HH:MM:SSfunction getCurrentTime() { var date = new Date();//当前时间 var year = date.getFullYear() //返回指定日期的年份 var month = repair(date.getMonth() + 1);//月 var day = repair(date.getDate());//日 var hour = repair(date.原创 2021-10-15 16:20:22 · 19733 阅读 · 0 评论 -
JavaScript防抖与节流,深入浅出,一本正经讲透彻
一、函数防抖(debounce)1. 什么是防抖?函数防抖:在频繁触发某一个事件时,一段时间内不再触发该事件后才会去调用对应的回调函数,在设定间隔时间内如果下一次事件被触发, 那么就重新开始定时器,直到事件触发结束。规定时间内没有继续触发事件的前提下,再去调用事件处理函数;具体如下面的例子所示:/*定义防抖函数 * func:传入一个函数,事件不再持续触发时会调用该函数 * delay:定义持续多久后执行传入的回调函数 * */ function debounce(func,d原创 2021-09-27 15:12:16 · 3837 阅读 · 18 评论 -
HTML5绘图方式Canvas和SVG的区别
介绍Canvas 和 SVG 都是 HTML5 中推荐的也是主要的2D图形绘制技术1.什么是 Canvas<canvas>是H5新增的组件,就像一块幕布,可以使用脚本(通常为Javascript)在其中绘制图形的HTML元素,他可以用来制作各种图、表,或者一些动画。 Canvas技术比较新,注重栅格图像处理。2.什么是SVG?SVG是一套独立的矢量图形语言,成为W3C标准已经有十几年, 基于可扩展标记语言XML 出来的区别: Canvas .原创 2021-09-17 17:14:22 · 832 阅读 · 2 评论 -
async/await:让异步编程更简单,全方位讲解,手把手教你能不会?
简单来说,async/await是基于promises的语法糖,使异步代码更易于编写和阅读。一、async:async创建一个异步函数来定义一个代码块,在其中运行异步代码;怎样变成异步函数呢?以async这个关键字开始,它可以被放置在一个函数前面async function f() { return 1;}f().then(alert); // 1//上下结果一样async function f() { return Promise.resolve(1);}...原创 2021-09-02 16:04:10 · 1841 阅读 · 80 评论 -
Promise如何使用?全方位解析,一篇搞懂异步
目录什么是异步?什么情况下用到promise?promise所有回调参数赋值写法链式调用promise.all在函数中 return 一个promise用ajax网络请求配合promise使用:什么是异步?异步:操作之间没啥关系,同时进行多个操作,操作之间不会有干扰(可以先往下执行,回头再执行上面的),代码复杂同步:同时只能做一件事,上面数据执行完之后才能进行下个操作(从上到下),代码简单什么情况下用到promise?一般情况下是有异步操作时,...原创 2021-08-26 18:23:51 · 951 阅读 · 6 评论 -
JavaScript小白绝对不会用的几个常用语句,循环,判断,字符串换数字,最后一条直接爆赞!
switch选择多个需被执行的代码块之一switch(e) { case 1: //e为1执行这里 break; case 2: //e为2执行这里 break; default: //都不满足执行这里}注意:不必用break中断 switch 代码块中的最后一个 case。代码块在此处会自然结束。Switch case 使用严格比较(===),值必须与要匹配...原创 2021-08-26 15:37:07 · 174 阅读 · 2 评论 -
让你五分钟搞懂,错误处理try..catch...finally的文章,涵盖throw,TypeError,RangeError,SyntaxError解释
用途通常,如果发生错误,脚本就会立即停止,并在控制台将错误打印出来。有了这个语句就可以捕获错误并执行合理操作,可以让程序继续执行下去语法try { // 代码...} catch (err) { //err是有关错误详细信息的对象 // 错误捕获,上面代码报错就会转到这个代码块,而不会停止运行} finally { //无论是否有异常抛出或捕获它总是执行}这种语句可以嵌套补充try块的代码可能会抛出三种异常:TypeError,RangeError原创 2021-08-24 17:15:23 · 749 阅读 · 3 评论 -
JavaScript高阶函数遍历迭代对象与数组,forEach,map,filter,reduce
下面演示下面四个常用遍历循环(迭代):forEach((item(值),index(下标))=>{});过滤器:filter()汇总:reduce()映射:map()现在假设我们有这三个需求1.需求:将所有小于100的数字2.需求:将所有小于100的数字进行转化:全部*23.需求:将所new2Nums数字相加,得到最终结果直接代码详细注释 // filter/map/reduce // filter中回调函数有一个要求:必须返回一个boolean原创 2021-08-20 18:39:04 · 732 阅读 · 8 评论 -
JavaScript定时器所有类型,全面的精简总结
1.setInterval() :按照指定的周期(以毫秒计)来调用函数。方法会不停地调用函数,直到调用clearInterval() 或窗口被关闭。setInterval(code,millisec,[arg1, arg2, ...])参数 描述 code 必需。要执行的代码串。 millisec 必须。时间间隔,以毫秒计。 arg1, arg2, ... 可选。当定时器过期的时候,将被传递给func指定函数的附加参数 返回值:返回值interval原创 2021-08-12 10:13:24 · 596 阅读 · 0 评论 -
JavaScript字符串转换数字的方法总结,极为常用“建议收藏”
目录1.parseInt(string,radix)解析一个字符串并返回指定基数的十进制整数或NaN。2.Number() 函数把对象的值转换为数字3.parseFloat()给定值被解析成浮点数或整数,若不能被转换成数值,则会返回 NaN。方法主要有:1.Number();2.parseInt();3.parseFloat();下面来挨个介绍1.parseInt(string,radix)解析一个字符串并返回指定基数的十进制整数或NaN。第一个参数要被解析的...原创 2021-08-09 15:55:49 · 906 阅读 · 1 评论 -
JavaScript 删除或抽取字符串指定字符的几种方法,极为常用“建议收藏”
1.substring() 方法用于提取(字符串)两个指定下标之间的字符。let a = "1,2,3";document.write(a.substring(2,a.Length))//第一个参数从下标为0的字符开始,包括当前下标0,//第二个参数到下标为几的字符结束,不包含当前下标,默认比要提取的子串的最后一个字符在字符串中的下标位置长度多+1//从第2个下标截取到总长度+1,所以结果输出为:2,32.substr() 方法可在字符串中抽取从下标为几的到下标为几指定数量的字符.原创 2021-08-04 14:59:21 · 15500 阅读 · 0 评论 -
关闭vue.js代码规范Eslint,脚手架新版以及旧版,简单方式
vue-cli2去config文件夹下的index.js文件夹下找到dev下useEslint的值改成false就好了;vue-cli3新版脚手架是没有config文件的这时需要我们在根目录创建一个vue.config.js然后写入下面代码保存即可。module.exports = { lintOnSave: false}...原创 2021-07-28 14:16:40 · 265 阅读 · 0 评论 -
json转换对象和字符串,实例解析
是ES5.1出来的JSON.stringify() 转为字符串JSON.parse() 解析jsonjson的标准写法1.只能用双引号2.所有的名字都必须用引号包起来实例:<body> <div id="result"></div> <script> const result =document.getElementById('result') // 绑定键盘按下事件 window.onkeyd原创 2021-07-23 13:41:19 · 364 阅读 · 0 评论