Javascript
文章平均质量分 51
JavaScript基础,ES6,ES7等等
年轻即出发
努力努力在努力!
展开
-
常见正则表达式
//1、只能输入20个字符以内/^.{1,20}$/g.test(value);//2、只能输入四位英文字母/^[a-zA-Z]{4}$/g.test(value)//3、必输项校验value=> !!value || 必输项!//4、两位整数三位小数/^[1-9][0-9]{0,1}(\.\d{1,3})$/g.test(value)/^[1-9][0-9]{0,1}$/g.test(value)//5、非必输项中各种长度及输入值的校验...原创 2021-11-24 13:41:26 · 26021 阅读 · 2 评论 -
js中同步和异步的理解
首先明确两点:1.JS 执行机制是单线程。2.JS的Event loop是JS的执行机制,深入了解Event loop,就等于深入了解JS引擎的执行。单线程执行带来什么问题?在JS执行中都是单线程执行,所以代码的执行可以说是自上而下,如果前一段的代码出现问题,就会导致下一段代码无法执行,对于用户而言就是卡死现象,所以在JS执行机制引出了异步执行操作。那异步能解决什么呢问题,又会带来什么问题?异步操作能够很好的解决上面单线程执行出现的卡死现象,但是也会产生问题,比如同时对一件事情操作,原创 2021-07-18 17:39:37 · 1002 阅读 · 1 评论 -
node版本降级
因为node版本太高,导致npm run dev报错。那么如何降级呢?(1)安装node版本管理模块nsudo npm install n -g下边步骤请根据自己需要选择(2)安装稳定版sudo n stable(3)安装最新版sudo n latest(4) 版本降级/升级sudo n 版本号//例如:sudo n 9.1.7...原创 2020-04-06 20:42:13 · 5277 阅读 · 0 评论 -
Host key verification failed. fatal: Could not read from remote repository.
Host key verification failed. fatal: Could not read from remote repository.请手动输入yes, 不要直接回车转载 2020-04-06 22:38:33 · 43798 阅读 · 11 评论 -
前端js判断两个时间的时间差
前端js判断两个时间的时间差需求需要判断两个时间的时间差,思路是把两个时间转换成时间戳如果是2012/02/12这种格式的日期没有问题,如果是2012-02-12格式的还需要转换成2012/12/12而后相减的时间差除以3600,再除以1000就是相差的小时数,同理除以24就是相差的天数/** * @author Wujy * @date 2020/1/14 * @Desc...原创 2020-04-18 22:06:39 · 3374 阅读 · 0 评论 -
函数去抖(debounce)和函数节流(throttle)
目的以下场景往往由于事件频繁被触发,因而频繁执行DOM操作、资源加载等重行为,导致UI停顿甚至浏览器崩溃。window对象的resize、scroll事件拖拽时的mousemove事件射击游戏中的mousedown、keydown事件文字输入、自动完成的keyup事件实际上对于window的resize事件,实际需求大多为停止改变大小n毫秒后执行后续处理;而其他事件大多的需求是以一定...原创 2020-04-20 14:27:33 · 658 阅读 · 0 评论 -
常用的js数组复制(浅拷贝,深拷贝)
浅拷贝:(1)数组的直接赋值属于数组的浅拷贝,JS存储对象都是存内存地址的,所以浅拷贝会导致新数组和旧数组共用同一块内存地址,其中一个数组变化,另一个数组也会相应的变化。(2)数组内部不含有引用类型,使用slice() 、concat() 和 assign() 方法都属于数组的深拷贝,一个数组变化,另一个数组不受影响。(3)数组内部含有引用类型,使用slice() 、concat() 和 assign() 方法,非引用类型的值属于深拷贝,引入类型的值属于浅拷贝,一个数组变化,另一个也会相应的变化原创 2020-07-14 16:56:31 · 21089 阅读 · 0 评论 -
lodash入门
简介Lodash是一个著名的javascript原生库,不需要引入其他第三方依赖。是一个意在提高开发者效率,提高JS原生方法性能的JS库。简单的说就是,很多方法lodash已经帮你写好了,直接调用就行,不用自己费尽心思去写了,而且可以统一方法的一致性。Lodash使用了一个简单的 _ 符号,就像Jquery的 $ 一样,十分简洁。类似的还有Underscore.js和Lazy.js...转载 2020-04-20 14:18:51 · 1600 阅读 · 0 评论 -
关于JSON.parse(JSON.stringify(obj))实现深拷贝应该注意的坑
关于JSON.parse(JSON.stringify(obj))实现深拷贝应该注意的坑JSON.parse(JSON.stringify(obj))我们一般用来深拷贝,其过程说白了 就是利用JSON.stringify 将js对象序列化(JSON字符串),再使用JSON.parse来反序列化(还原)js对象;序列化的作用是存储(对象本身存储的只是一个地址映射,如果断电,对象将不复存在,因此需...转载 2020-04-15 18:41:20 · 457 阅读 · 0 评论 -
substring和substr小结
substring1 substring 方法用于提取字符串中介于两个指定下标之间的字符2 substring(start,end)开始和结束的位置,从零开始的索引 end:字符串下标,结束符是不包括该下标的。比如substring(0,3),那就是从下标0开始,截取到下标为3的前一位(不包括下标为3的那个字符)substr1substr 方法用于返回一个从指定位置...原创 2019-12-31 09:22:30 · 519 阅读 · 0 评论 -
antd中的disabledDate不可选择时间的处理
handleData(time){ if(!time){ return false }else{ // 大于当前日期不能选 time > moment() // 小于当前日期不能选 time < moment().subtract(1, “days”) // 只能选前7后7 time < momen...转载 2019-12-28 23:36:43 · 5785 阅读 · 0 评论 -
字符串截取前几位数,截取小数点之前的数字
1,截取字符串前i个字符str=str.substring(0,i);2,去掉字符串的前i个字符str=str.substring(i);将字符串从索引号为2开始截取,var sb = "bbbdsajjds";sb.substring(2); //bdsajjds从索引号2开始到索引好4结束(并且不包含索引4截取在内,也就是说实际截取的是2和3号字符);v...转载 2019-12-28 23:34:21 · 15724 阅读 · 0 评论 -
for ,forEach,for in,for of区别
for:遍历数组for用于遍历Array中的“索引”属性 一般情况下效率最好 但是对于稀疏数组处理不好,不会事前对Array的空值进行筛选//对象数组var arr = [ {Monday: '星期一', Tuesday: '星期二', Wednesday: '星期三'}]for (var i=0; i<arr.length;i++){ // i是下标(索引) con...转载 2019-12-26 16:08:52 · 98 阅读 · 0 评论 -
js数据类型转换
基础知识:JS的数据类型:基础数据类型:Number,String,Boolean,undefined,Null,Symbol,bigInt(ES6新增一种:Symbol,谷歌67版本中新增:bigInt,安全存储操作大整数)引用数据类型:Object(包括function,Array,Date)检测数据类型的方式:typeof:只能检测undefined,strin...原创 2019-12-25 14:20:14 · 184 阅读 · 0 评论 -
JavaScript toLocaleString() 方法
定义和用法:toLocaleString()方法可根据本地时间把Date对象转换为字符串,并返回结果。语法:dateObject.toLocaleString()返回值dateObject 的字符串表示,以本地时间区表示,并根据本地规则格式化。问题://Javascript 中new Date().toLocaleString()在不同浏览器中的结果不一致的解决方法...原创 2019-12-23 15:55:22 · 1589 阅读 · 0 评论 -
JavaScript小数运算出现多位的解决办法
JavaScript小数运算出现多位的解决办法在开发JS过程中,会经常遇到两个小数相运算的情况,但是运算结果却与预期不同,调试一下发现计算结果竟然有那么长一串尾巴。先看几个例子,在Chrome控制台测试结果如下:产生原因:JavaScript对小数运算会先转成二进制,运算完毕再转回十进制,过程中会有丢失,不过不是所有的小数间运算会有这个问题。解决办法:一、先把需要运算的小数...转载 2019-11-01 12:03:05 · 571 阅读 · 0 评论 -
cssFloat属性
看到一段有意思的代码,所以查询了一下。<html><head><script type="text/javascript">function setFloat(){document.getElementById("img1").style.cssFloat="left";}</script></head><b...原创 2019-10-28 15:50:56 · 168 阅读 · 0 评论 -
节流和防抖函数,异步和同步函数,跨域和同源策略
防抖和节流在进行窗口的resize、scroll,输入框内容校验等操作时,如果事件处理函数调用的频率无限制,会加重浏览器的负担,导致用户体验非常糟糕。此时我们可以采用debounce(防抖)和throttle(节流)的方式来减少调用频率,同时又不影响实际效果。debounce使用场景scroll事件(资源的加载) mousemove事件(拖拽) resize事件(响应式布局样式)...原创 2019-10-28 14:43:57 · 1300 阅读 · 0 评论 -
一、RHS和LHS查找 异常
一、RHS和LHS查找 异常 作用域是一套规则,用于确定在何处以及如何查找变量(标识符)。如果查找的目的是对变量进行赋值,农民就会使用LHS查询;如果目的是获取变量的值,就会使用RHS查询。JavaScript引擎首先会在代码执行前对其进行编译,在这个过程中,像 var a =2这一点声明会被解析成两个独立的步骤:首先,var a 在其中作用域中声明新变量。这是在代码执行前进行。...转载 2018-09-15 16:35:06 · 155 阅读 · 0 评论 -
一次掌握 JavaScript ES5 到 ES8 数组内容
一次掌握 JavaScript ES5 到 ES8 数组内容ECMAScript 5.1 中提供的数组方法其中部分方法,ECMAScript 3 就出现了,但是本文不再细分。ECMA-262/5.1 规范判断是否是数组 Array.isArray ( arg )// false or true 不支持此方法的IE9-等浏览器可以这样处理: O...转载 2018-12-18 10:54:54 · 125 阅读 · 0 评论 -
前端面试题汇总---JavaScript篇(1)
**JavaScript的组成**- JavaScript 由以下三部分组成:- ECMAScript(核心):JavaScript 语言基础- DOM(文档对象模型):规定了访问HTML和XML的接口- BOM(浏览器对象模型):提供了浏览器窗口之间进行交互的对象和方法**JS的基本数据类型和引用数据类型**- 基本数据类型:undefined、null、boole...转载 2019-03-05 19:45:39 · 351 阅读 · 0 评论 -
前端面试题汇总---JavaScript篇(2)
## 1、ES5、ES6和ES2015有什么区别?> `ES2015`特指在`2015`年发布的新一代`JS`语言标准,`ES6`泛指下一代JS语言标准,包含`ES2015`、`ES2016`、`ES2017`、`ES2018`等。现阶段在绝大部分场景下,`ES2015`默认等同`ES6`。`ES5`泛指上一代语言标准。`ES2015`可以理解为`ES5`和`ES6`的时间分界线...原创 2020-04-17 11:34:42 · 222 阅读 · 0 评论 -
小程序时间戳转日期、具体时间
小程序时间戳转日期、具体时间时间戳转换日期function toDate(number) { var n = number; var date = new Date(n); var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = ...转载 2019-06-23 19:09:08 · 372 阅读 · 0 评论 -
js 中日期 转换成时间戳 例如2013-08-30 转换为时间戳
js 中日期 转换成时间戳 例如2013-08-30 转换为时间戳热心网友2018-11-18js字符串转化时间戳可以使用自带函数 Date(要转化的时间字符串)先转化为Date类型,之后再将Date类型转化为时间戳类型,其中时间字符串有要求,形式必须是 yyyy-MM-dd HH:mm:ss 的形式,当然,也可以只是 yyyy-MM-dd, 就是 2013-08-30,如下:...转载 2019-06-23 19:14:26 · 4958 阅读 · 2 评论 -
(a ==1 && a== 2 && a==3) 有可能是 true 吗?
(a ==1 && a== 2 && a==3) 有可能是 true 吗?2019-04-122726View0在前端博客群里的面试题学到的东西,什么时候 a ==1 && a== 2 && a==3 为 true?解法一:对象类型转换var a = { i:1, toString:function(...转载 2019-06-23 20:20:20 · 219 阅读 · 0 评论 -
JavaScript中8个容易犯的错误
1. 你是否尝试过对数组元素进行排序?JavaScript默认使用字典序(alphanumeric)来排序。因此,[1,2,5,10].sort()的结果是[1, 10, 2, 5]。如果你想正确的排序,应该这样做:[1,2,5,10].sort((a, b) => a - b)2. new Date() 十分好用new Date()的使用方法有:不接收任何参数:返回当前...转载 2019-06-23 20:21:25 · 119 阅读 · 0 评论 -
数组常用方法
必看!!!数组常用的方法(ES6)一、forEach:遍历数组var colors = ["red","blue","green"];// ES5遍历数组方法for(var i = 0; i < colors.length; i++){ console.log(colors[i]);//red blue green}// ES6 forEachcolors.f...转载 2019-06-24 19:24:07 · 3199 阅读 · 0 评论 -
页面快捷键,html页面快捷键,网页快捷键,网页全键盘(亲测有效!)
页面快捷键,html页面快捷键,网页快捷键,网页全键盘在Vue中写到created里面就ok!js代码:<script>document.οnkeydοwn=function(){ss()}function ss(){if(event.keyCode==13){ alert("调用按钮事件.");}}</script>或者<s...转载 2019-07-21 20:42:25 · 789 阅读 · 0 评论 -
JS从数组中随机取出几个数组元素的方法
JS从数组中随机取出几个数组元素的方法原文链接:http://www.cnblogs.com/xiaozhumaopao/p/10123708.html原文链接:http://caibaojian.com/js-get-random-elements-from-array.html方法一超有用,可以适用于二维数组;js如何从一个数组中随机取出一个元素或者几个元素。假如数组为·...转载 2019-10-11 16:49:27 · 2451 阅读 · 0 评论