- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 从V8引擎的角度详解JavaScript变量提升
在 JavaScript 中,变量提升是一种重要的概念,它可以影响代码的执行顺序和作用域。了解变量提升的机制对于理解 JavaScript 代码的执行过程至关重要。在本文中,我们将从 V8 引擎的角度详细解释 JavaScript 中的变量提升。
2023-06-05 17:47:02 244
原创 JavaScript作用域
JavaScript作用域采用的是静态作用域。作用域:当前的执行上下文及其闭包。变量和函数可见或可被引用的上下文。如果变量或函数不在当前作用域范围中,则无法使用。变量/函数可见和可被有效访问的区域,这个范围就是作用域。
2023-06-05 16:59:17 348 1
原创 这一次从JavaScript发展史说起
JavaScript 是一门具有重要影响力的编程语言,自它诞生以来,已经经历了数十年的发展。它也是前端开发人员必会的技能之一。但是,你了解过它的历史吗?为什么诞生、是什么?能做什么?所谓知其然知其所以然,在这篇文章中,我将带你回顾 JavaScript 的发展历程,以及它如何从一门简单的脚本语言发展成为如今广泛应用于前端开发、后端开发和移动开发的多用途编程语言。
2023-05-31 15:38:58 301
原创 身为前端仔的你,了解过WebRTC吗?
WebRTC (Web Real-Time Communications) 是一项开源的跨平台的实时通信技术,我们可以使用它在不需要中间媒介的情况下在浏览器中建立对等连接(peer-to-peer),实现音视频传输、屏幕共享、P2P文件共享等功能。WebRTC 在 2011 年 6 月 1 日开源并在 Google、Mozilla、Opera 支持下被纳入万维网联盟的 W3C 标准。
2023-05-04 15:34:23 388
原创 HTTP请求头referer,防盗链的问题
排查发现,第三方链接使用的是 阿里云对象存储OSS(AliyunOSS),在 OSS 控制台开启了 Referer防盗链。前端在跳转链接时,默认会在被访问的链接请求头上添加 Referer 头。如下图。由于前端项目的域名没有在 第三方 Referer防盗链 的白名单中,所以在访问时,会抛出错误 `AccessDenied, You are denied by bucket referer policy`.。
2023-02-14 07:30:00 2589
原创 详解for循环中使用setTimeout,面试题
首先,确认下,这里for语句中用var声明的变量i不是for循环的局部变量,是跟for在相同的作用域中的变量(因为var没有块作用域,在块语句中形成不了块作用域)。 for循环是同步的,setTimeout是异步的。这里会生成5个setTimeout,每个setTimeout的callback都会先放到异步队列中去,等到for循环同步执行完之后才会依次执行。这里的i是全局作用域中的同一个i,i在每次for循环的时候值都会加1,一直加到5判断不满足条件则终止for循环(此时的i=5)。同步任务执行完成,开
2022-06-22 19:20:15 389
原创 Uncaught EvalError: Refused to evaluate a string as JavaScript because ‘unsafe-eval’ is not an allow
问题在Electron 中使用react+ webpack创建项目,运行Electron后,控制台报错:Uncaught EvalError: Refused to evaluate a string as JavaScript because ‘unsafe-eval’ is not an allowed source of script in the following Content Security Policy directive: “script-src ‘self’”.
2022-04-26 16:40:14 12215 3
原创 代码在线运行网站 在线编辑 推荐
前端代码在线编辑网站推荐stackblitz(个人感觉这个很好用,网站打开速度也很快)链接:https://stackblitz.com/codesandbox链接:https://codesandbox.io/codepen链接:https://codepen.io/jsbin链接:https://jsbin.com/...
2022-03-07 10:37:47 576
原创 jQuery根据文本内容获取元素
jQuery根据文本内容获取元素jQuery中文文档语法:$('div:contains(text)');使用:<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <title></title> </head> <body> <ul> <li>天道酬勤&
2021-03-08 11:50:35 2870
原创 前端新拟态UI风格按钮,button按钮点击凹陷效果
新拟态代码实现复制以下代码运行查看效果<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <style> .button { display: flex; align-items: center; just
2021-01-28 10:21:31 1517
原创 js根据数组对象中的某个属性进行数组去重
使用reduce方法进行数组对象去重function unique(uniqueArr) { var has = {}; return uniqueArr.reduce(function (arr, item) { !has[item.id] && (has[item.id] = true && arr.push(item)); return arr; }, []);}var arr = [ { id: 'P001',
2020-12-16 16:23:52 911 1
原创 解决js浮点数运算的精度问题
在javascript中进行运算的时候经常会出现浮点数的问题,导致运算结果不准确比如:0.1 + 0.2 = 0.30000000000000004完整demo及解决方案如下:<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta n...
2020-04-09 16:43:49 470
原创 jqgrid合并单元格,合并行、合并列
jqgrid合并行、合并列先看示例图片最终效果:注意事项:这里示例用的jqgrid表格是加载的本地数据如果用的不是加载本地数据的方法,需要把合并行和列的方法放在gridComplete: function(a, b, c) {...}加载事件函数里边调用需要合并的单元格要在配置项中加上以下代码配置(示例):{ name: 'name', align: 'center',...
2020-04-07 19:56:22 4422 4
原创 js正则限制input只能输入数字,金额
限制input只能输入金额JS代码:function checkInput(_this) { if (_this.value != '' && _this.value.substr(0, 1) == '.') { _this.value = '0.00' } if (_this.value == '') { _this.value = '0.00'...
2020-04-07 10:12:28 3403 1
原创 一篇文章快速搞懂js中的splice方法
splice() 方法介绍:splice()方法可以从数组中删除和替换数组中的项,返回被删除的项。这个方法会改变原数组,是直接在原数组上进行操作的。// i 从那个位置[索引]开始删除// length 删除几个// item 可选,要替换的值arr.splice(i, length, [item])注:如果从数组中删除了多个项,并且想替换对应的值,那么删除了几个, 就需要从第...
2020-04-03 20:21:48 366
原创 前端页面全局变灰,兼容IE、Chrome
设置前端页面全局变为灰色setGlobalBackgroundGray()function setGlobalBackgroundGray(){ var style = document.createElement("style"); style.type = "text/css"; style.appendChild(document.createTextNode("html{f...
2020-04-03 19:14:12 2299 4
原创 jquery中的trigger方法无法触发页面中a标签的点击事件的问题
jquery中的trigger方法无法触发页面中a标签的click事件问题:$('a').trigger('click') // 这样写不生效,无法触发click事件解决方案:// 使用[0].click()$('a')[0].click()// 或者使用原生js的方法window.parent.document.querySelector('a').click()...
2020-04-03 12:04:13 713 1
原创 jqgrid多次查询导致参数值累加,无法以最新查询条件查询
jqgrid多次查询无法以最新条件查询的问题项目中用到的jqgrid比较多,近期遇到的一个jqgrid查询的问题:多次查询渲染jqgrid的时候无法以最近的查询条件传给后台来获取数据解决方法:在重新加载jqgrid之前将jqgrid的postData参数逐个清空// 获取jqgrid的postData参数,逐个清空function initGridPostData() { va...
2020-03-24 13:14:22 364
原创 jstree报错 Cannot read property 'state' of undefined
在重复渲染同一个jstree时报错Cannot read property ‘state’ of undefined这个错貌似并不影响使用,但是控制台报个红色的错误终归是不好的,解决方法:在创建jstree树之前调用 $('#jstree').jstree('destroy') 这个方法销毁原来的树// 加上这个之后,jstree就不会报错 Cannot read property 's...
2020-03-24 11:49:38 1527
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人