JS
ShanJianL
这个作者很懒,什么都没留下…
展开
-
如何利用vue+MongoDB+node+express制作个人博客
vue的话不用说了,直接用vue全家桶,后台方面利用fs模块进行对md文件的增删改操作,并且记录每次上传md文件进入数据库,下面是我制作的博客的链接,大家可以去看看,还是能实现的,或者你们可以尝试用Vuepress和hero技术 点我查看博主制作的效果图 效果图: ...原创 2020-03-21 20:40:14 · 401 阅读 · 1 评论 -
vue之vuex源码的理解与剖析
具体内容请查看以下链接 我觉得写得真心不错原创 2020-03-21 20:22:20 · 143 阅读 · 0 评论 -
什么是防抖和节流?有什么区别?如何实现?
什么是防抖和节流?有什么区别?如何实现? 一、防抖 场景:在滚动事件中需要做个复杂计算或者实现一个按钮的防二次点击操作。这些需求都可以通过函数防抖动来实现。尤其是第一个需求,如果在频繁的事件回调中做复杂计算,很有可能导致页面卡顿,不如将多次计算合并为一次计算,只在一个精确点做操作。 一般的防抖会有immediate选项,表示是否立即调用。 // 思路:在规定时间内未触发第二次,则执行 funct...原创 2020-02-26 21:58:16 · 145 阅读 · 0 评论 -
实现一个基本的Promise
思路 未添加异步处理等其他边界情况 ①自动执行函数,②三个状态,③then class Promise { constructor(fn) { // 添加三个状态 this.state = 'pending' this.value = undefined this.reason = undefined le...原创 2020-02-26 21:57:41 · 87 阅读 · 0 评论 -
JavaScript之对象创建模式
JS之设计模式 工厂模式 创建多个单体对象的时候会产生大量重复的代码发明一种接口函数 function createPerson(name, age, job ) { var o = new Object(); o.name = name o.age = age ...原创 2019-06-25 12:44:54 · 112 阅读 · 0 评论 -
Math的计算方法+随机数的封装函数
Math.max And min // max取数组中的最大值 var max = Math.max(11, 99, 9); // min取数组中的最小值 var min = Math.min(1, 0, 9); console.log("最大值---------" + max + "最小值--------" + min) Math.ceil // ceil方法是向上取整、...原创 2019-07-13 15:03:34 · 303 阅读 · 0 评论 -
ES6新增的const和let同var之间的对比并且解决了循环内的点击事件上I的值一直是末尾值
ES6新增的const和let同var之间的对比 1. var 2. let 3. const 1. var:可以重复声明、无法限制修改、没有块级作用域 1.1、变量可以重复声明 var a = 12; var a = 5; console.log(a); // 5 1.2、可以被修改 var b = 12; b = 5; console.log(b) // 5 1.3...原创 2019-07-14 14:55:43 · 239 阅读 · 0 评论 -
内存溢出与内存泄露
内存溢出与内存泄露 1、什么是内存溢出? 一种程序运行出现的错误 当程序运行时需要的内存超过剩余的内存时,就会内存溢出的错误 1、什么是内存泄露? 占用的内存没有及时释放 内存泄露积累多了就容易导致内存溢出 常见的内存泄露:1、意外的全局变量 2、没有及时清理的定时器或回调函数 3、闭包 内存溢出 var obj = {} for (var i = 0; i < 100000000;...原创 2019-07-20 13:37:24 · 209 阅读 · 0 评论 -
获取路由地址上的参数值
写一个函数 function getUrlKey(name){ return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null } n...原创 2019-10-10 15:39:28 · 818 阅读 · 0 评论