![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
RXpro0908
好方法事半功倍,好习惯受益终身
展开
-
for in 遍历数组在ie中的问题
今天在计算一个数组的总和的时候,用到了for in ,打印 index 的时候,发现ie浏览器上多出一项,其他浏览器没有这个问题。经过查阅,这是ie浏览器的问题,所以原创 2021-06-03 15:04:17 · 302 阅读 · 0 评论 -
ie浏览器不兼容日期格式为****-**-**
如果为ie浏览器 如下:先转huanconst date = '2018-01-30'.replace(/-/g, '/');原创 2021-06-03 14:19:50 · 263 阅读 · 0 评论 -
兼容ie11,blob下载文件
return request({ url: '*****', method: 'post', responseType: 'blob', data: data })原创 2021-06-03 11:17:13 · 600 阅读 · 0 评论 -
moment的常见应用
moment常见应用,详见moment.js的官网:http://momentjs.cn/安装:npm install moment --save引用:import moment from "moment"日期格式化moment().format("YYYY-MM-DDHH:mm:ss")获取当前时间 格式为2020-09-17 14:00:00moment().format("MMMM Do YYYY,h:mm:ss a") 九月17日2020,2:00:00 下午mo..原创 2020-09-17 15:11:33 · 919 阅读 · 0 评论 -
原生js绑定事件的三种方式
第一种:html标签事件绑定:属性绑定,js中定义相应事件的函数。(这个在该元素的properties属性中可以查到,也可以在事件监听中看到)function show(){ console.log('show');}function print(){ console.log('print');}<button onclick="show()" id="btn1" onclick="print()">html标签事件绑定-触发的方法只有show</button.原创 2020-05-20 15:38:20 · 3909 阅读 · 2 评论 -
谷歌浏览器的debugger调试
在js页面中写入debugger代码setTimeout(() => { debugger _this.flag2 = true this.$router.push({ path: "/" }); }, 5000);启动项目,打开F12检查窗口,等待执行到debugger代码的时候原创 2020-05-14 14:23:31 · 2330 阅读 · 0 评论 -
js中递归函数
递归函数:概念:递归函数就是函数中点用自己的函数。举几个例子:1、递归求阶乘function fun(n){ if(n===1){ return 1; } return n*fun(n-1);}console.log(fun(3)) // 6console.log(fun(5)) // 1202、递归求两个数最大公约数fu...原创 2020-04-09 18:09:22 · 161 阅读 · 0 评论 -
Object.keys方法
在实际开发中,有时需要知道对象的所有属性,ES5 引入了Object.keys方法,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键名。具体用法:Object.keys()方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用for...in循环遍历该对象时返回的顺序一致 。语法:Object.keys(obj) ...原创 2020-04-13 14:03:46 · 412 阅读 · 0 评论 -
js中原型链理解及关系图
实例对象访问属性和方法的时候,先查找自己身上下面的属性的方法,如果没有找到,会沿着原型链找到对象的原型,查看原型上是否有要查询的属性和方法,依次查找,找到就返回,如果找到最顶层Object上都没有,(Object原型是null)则返回undefined。这样向上链式结构,称为原型链。网上有一些图片,可以参考一下理解 实例对象、构造函数、原型、原型的原型的关系。其中 f:实例对象、F...原创 2020-04-04 20:47:03 · 260 阅读 · 0 评论 -
创建对象的几种方法(面向对象)
js中的面向对象编程,就是创建对象,给对象添加属性的方法。创建对象的几种方法:1、对象字面量方式创建对象var objz={name:"张三"}2、构造函数创建对象 (系统自带的Object函数)var objl = new Object({name:"李四"});Object是一个系统提供的构造函数,这个构造函数专门用来创建对象使用的。3、工厂模式创建对象 (函...原创 2020-04-03 22:16:00 · 857 阅读 · 0 评论 -
删除数组中的所有元素
var arr = [1,2,3,4,5];for(var i=0;i<arr.length;i++){ arr.splice(i,1);}console.log(arr);上面的结果为:[2,4]for循环删除数据i=0时删1,i=1时删3,i=2时删5,所以就这样剩下了2和4。这种现象就叫做数组塌陷。删除数组中的所有元素的方法:1、使用while循环删...原创 2020-03-31 23:16:29 · 2895 阅读 · 0 评论 -
Js实现在数组内多个删除 Js数组内多个对象删除
// arr1:数组 arr2:重复 function remove(arr1, arr2) { for (let i = 0; i < arr2.length; i++) { for (let j = 0; j < arr1.length; j++) { ...原创 2020-02-16 19:30:29 · 2614 阅读 · 0 评论 -
for 循环中setTimeout(function () { console.log(i)},100)中的异步问题
for(var i=0;i<=3;i++){ setTimeout(() => { console.log(i) }, 1000);}//四次4这道题涉及了异步、作用域、闭包settimeout是异步执行,10ms后往任务队列里面添加一个任务,只有主线上的全部执行完,才会执行任务队列里的任务,当主线执行完成后,i是4,所以此时再去执行任务...原创 2020-02-16 12:07:08 · 2580 阅读 · 0 评论 -
setTimeout
写一个函数,实现与setTimeout一样的效果function fn(cb,time){ var date=+new Date(); while(true){ if(date+time==+new Date()){ cb(); break; } }}fn(fun...原创 2020-02-14 15:10:27 · 86 阅读 · 0 评论 -
前端易混概念分析总结
一:cookie、Local Storage、Session Storage 区别Cookie 存储在用户本地的终端的数据 。生命期为设置的cookie过期时间之前一直有效,若没设置生命期,窗口或者浏览器关闭,数据就会消失。存放的数据大小为4K左右,存放的数据个数有限制,一般不超过20个。缺点是不能存储大数据且不易读取。是记录在客户端的数据。(Cookie是服务器发给客户端的特殊信息,cook...原创 2020-01-27 18:58:20 · 132 阅读 · 0 评论 -
数组操作解析
数组操作解析: var arr = [1, 3, 5, 7, 4]; brr=arr; //简单类型存储的是值本身,复杂类型存储的是地址, //如果把第一个对象赋值给另一个变量,此时两个变量会指向同一个对象。 //如果修改对象里面的键值对,对应的变量都会改变 arr[6] = "w";//如果下标是已经存在的,那赋值...原创 2020-01-11 20:05:04 · 112 阅读 · 0 评论 -
闭包的理解及继承的4种方法
首先,闭包是js作用域嵌套所形成的产物。闭包的形成,就是一个函数中返回一个子函数,在子函数中使用父函数的变量,在全局中调用子函数。闭包的特点:1、变量的声明在函数内部,这个变量不会被函数外部覆盖,使变量私有化。2、函数内部的子函数的作用域不会被收 回,延长变量生命周期。但也容易造成内存的溢出。闭包主要应用在设计模式中的单例模式,以及在循环中进行...原创 2020-01-07 20:29:40 · 361 阅读 · 0 评论