- 博客(107)
- 收藏
- 关注
原创 使用vue实现一个点击换色的指令
html代码:<div v-random-color style='width:100px;height:100px;background-color:red;position:absolute;'></div>script代码:// vue自定义指令,点击可以让元素随机换色Vue.directive('randomColor', function(){ ...
2019-07-30 19:36:34
843
原创 vue自定义一个拖拽指令
<!DOCTYPE html><html><head> <title>vue自定义指令</title> <script type="text/javascript" src='vue.js'></script> <style type="text/css"> *{ margin: 0;...
2019-07-30 19:24:53
291
原创 使用canvas实现一个扇形loading动态图
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>loading</title> <style> #box{ font-size: 20px; font-weight: bold; color:r...
2019-04-28 20:21:20
915
原创 js实现二叉树结构及其操作
//二叉搜索树结构(BST) function BinarySearchTree(){ //每一个节点的数据结构 function Node(key){ this.key = key; this.left = null; this.right = null; } this.root = null; //向树中插入值 this.insert = ...
2019-02-12 18:22:49
638
原创 js实现字典结构
//字典数据结构 function Dictionary(){ this.items = {}; //检查是否有某一个键 this.has = function(key){ return this.items.hasOwnProperty(key); } //为字典添加某一个值 this.set = function(key,val){ this.item...
2019-02-11 18:55:10
1340
原创 js实现集合
// 集合(不允许重复)es6提出了Set数据结构,也就是我们的集合 //这里我们通过对象来模拟集合,适用对象而不使用数组的原因是因为对象不允许有重复的属性 //是将集合中的值作为对象的键来定义 function Set(){ this.items = {}; //判断集合中有没有某一个值 this.has = functi...
2019-02-01 15:05:09
1333
原创 js实现单向链表和双向链表
//js实现链表 //单向链表 function LinkedList() { //单链表的节点结构 function Node(ele){ this.element = ele; this.next = null; } this.head = null; ...
2019-01-31 16:58:28
414
原创 js实现栈结构,以及十进制转化为任意机制数
//栈结构 function Stack(){ //声明一个数组来保存元素 let items = []; //向栈中天添加元素 this.push = function(item){ items.push(item); } //删除栈中的最后一个元素,返回所删除的元素...
2019-01-29 17:05:26
280
原创 用原生js实现addClass,hasClass,removeClass
<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial
2019-01-24 20:45:30
598
原创 二分查找(JS实现)
//二分查找:平均时间复杂度O(logn),如果找到了返回下标,如果找不到则返回-1 //前提为有序数组 //方法一:非递归 function binarySearch(arr,target){ var high = arr.length-1, low = 0, mid; while(low<=high){ mid = Math.floor((l...
2019-01-05 20:06:33
400
原创 堆排序
//不稳定,与初始状态无关,平均时间复杂度O(nlogn) var arr = [1,4,2,6,7,3]; //堆排序 // 堆分为大根堆和小根堆 // 大根堆表示根元素的值比其左右子节点的值都大(一般用于从小到大排序) // 小根堆表示根元素的值比其左右子节点的值都小(一般 用于从大到小排序) function heapSort(arr){ var len = arr....
2019-01-05 19:51:57
171
原创 php删除,移动,复制目录
//删除目录(递归删除) $dir = 'imgs1'; function delDir($dir){ //传入文件的路径 //遍历目录 $arr = scandir($dir); foreach ($arr as $val) { if($val!='.' && $val!='..'){ //路径链接 $file = $dir . ...
2018-12-21 11:21:59
451
原创 将字符串中的特殊字符进行转义
function escapeRegExp(str) { return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");}
2018-12-15 16:41:24
2904
原创 斐波那契数列(三种实现方法)
//斐波那契数列 // 1.平均时间复杂度O(n^2),占用的额外空间O(n) function fib(n){ if(n===1||n===2){ return 1; }else{ return fib(n-1) + fib(n-2); } } //2.平均时间复杂度O(n),占用的额外空间O(n) function fib(n){ ...
2018-10-20 21:18:58
363
原创 JS实现阶乘
//求阶乘 function fun(n){ if(n<=1){ return 1; }else{ return n*fun(n-1); } } // 上面这种方法存在紧耦合的情况,所以出现下面的方法 function fun(n){ if(n<=1){ return 1; }else{ return n*...
2018-10-20 21:07:27
4174
原创 判断一个数是否是质数
// 判断一个数是否为质数的函数(质数,只能被1和他本身整除的数) // 判断方法,如果一个数在2到他本身开根号之间的数都无法整除,那么他就是一个质数 function zhishu(num){ var sqrt = Math.sqrt(num); for(var i=2;i<=sqrt;i++){ if(num%i===0){ return fals...
2018-10-20 21:03:48
584
原创 from memory cache和from disk cache一些问题
这个问题源于今天无意中打开开发者工具的network发现浏览器在读取缓存时还有这两种不同的方法,所以看了一些资料,自己写一一篇总结一下。发现虽然都是缓存中去文件但还是有一些区别的。webkit资源的分类:webkit的资源分类主要分为两大类:主资源和派生资源。http状态码:200 from memory cache不访问服务器,直接读缓存,从内存中读取缓存。此时的数据...
2018-10-20 15:29:42
3409
1
原创 原生JS实现promise(只包括状态改变的代码)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <script&
2018-10-17 21:23:05
1047
原创 JS数组扁平化的几种方法
<script> var arr = [[1,2,[3,4],5],[6,7,8],[[9,10],11]]; //方法一: function flatten(arr){ return arr.reduce(function(prev,cur){ return prev.concat(Array.isArray(cur)?flatten(cur):cur); ...
2018-10-01 18:35:25
277
原创 半圆,1/4圆,半椭圆,1/4椭圆,纯CSS画图
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> /*半圆*/ .box{ width:100px; heig
2018-10-01 15:22:04
4039
原创 原生js封装的ajax请求
function ajax(json){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject('Microsoft.XMLHTTP'); } //解析所传递过来的数据 ...
2018-08-20 17:45:49
572
原创 leetcode刷题(第一天)
1.two sum:解法一:function sum(arr,target){ var len = arr.length; for(var i=0;i<len;i++){ for(var j=0;j<len;j++){ if(i!=j){ ...
2018-08-19 11:50:51
186
原创 jade的unexpected token "indent"错误解决方法
1.今天在写demo时老报错:错误如下:Error: ./1.jade:21|doctype> 2| html3| meta(charset='utf-8')4| title pages5| body unexpected token "indent"找了半天不知道自己错在了哪儿。。。。后来发现是因为,HTML和dictype之间不用缩进,二者是平...
2018-08-13 08:27:22
2011
1
原创 wamp图标变为黄色无法启动解决方法
哇哇哇,我在使用wamp时遇到这个问题了,然后搜到以为大神的解决方法,分享给大家:https://blog.youkuaiyun.com/zw98700/article/details/77152290
2018-08-13 08:25:57
885
原创 vue动画+animate.css
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>vue</title> <script src='vue.min.js'></script> &a
2018-08-12 19:44:13
454
原创 vue动画实现循环切换
注意动画的钩子函数的判断逻辑,注意动画编写时类名的顺序!!<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>vue</title> <style> .box{ w
2018-08-12 19:06:43
2798
原创 JS tab栏
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> .top{ overflow: hidden; padding
2018-08-12 09:21:53
250
原创 原生js的拖拽事件
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> .box{ width:200px; height:200px
2018-08-12 08:33:53
685
转载 关于创建对象的几种方式
一篇很详细的博客:http://www.cnblogs.com/mizzle/archive/2011/07/06/2099342.html
2018-08-11 12:30:27
174
原创 es6 class类的理解
es6:类声明以 class 关键字开始,其后是类的名称;剩余部分的语法看起来就像对象字面量中的 方法简写,并且在方法之间不需要使用逗号。类和自定义函数的区别:(有两种定义方式,表达式和声明)1.class没有变量提升。2.类声明会自动运行在严格模式下,并且也无法退出严格模式。3.类的所有方法都是不可枚举的(enumerable=false)。4.调用类时不使用new运算符...
2018-08-11 12:29:09
272
原创 vue-轮播图
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>轮播图</title> <style> #app{ width: 570px; height: 280px;
2018-08-06 23:47:10
212
原创 vue封装一个移动阴影的盒子
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>自定义指令</title> <script src='./node_modules/vue/dist/vue.min.js'>&
2018-08-06 21:56:04
731
原创 node练习
实现用户注册,登录,添加文章,查看文章,管理员登录,管理员查看多有用户,删除用户的功能。记录用户信息的文件名为save.txt,记录文章标题的文件名为text.txt,保存文章的文件夹为text文件夹。初始的时候,save.txt文件夹为一个空对象,text.txt文件夹为一个空数组。html代码:<!DOCTYPE html><html lang="en"&...
2018-08-05 15:56:11
419
原创 元素绑定事件和解除事件的兼容性写法
var EventUtil = { addHandler: function(element, type, handler){ if (element.addEventListener){ element.addEventListener(type, handler, false); } else if (element.a...
2018-08-03 17:48:19
274
原创 js基础算法题
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <script&
2018-07-29 17:30:59
224
原创 深度克隆(针对数组和对象)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <script&
2018-07-22 09:40:12
424
原创 数组去重
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <script&
2018-07-21 18:53:56
141
原创 将NodeList类数组转换为数组
由于 IE8 及更早版本将 NodeList实现为一个 COM 对象。要想在 IE 中将 NodeList 转换为数组,必须手动枚举所有成员。function convertToArray(nodes){ var array = null; try { array = Array.prototype.slice.call(nodes, 0); //针对非 IE 浏览器 } catch (e...
2018-07-11 19:03:47
571
原创 用户代理字符串检测脚本
以下是完整的用户代理字符串检测脚本,包括检测呈现引擎、平台、Windows 操作系统、移动设备和游戏系统:var client = function(){ //呈现引擎 var engine = { ie: 0, gecko: 0, webkit: 0, khtml: 0, opera: 0, //完整的版本号 ver: null }; //浏览器 var browser...
2018-07-11 18:40:29
176
原创 BOM的相关操作(查询字符串转为对象,浏览器的插件信息)
1.查询字符串转换为对象:function getQueryStringArgs(){ //获取查询字符串并除去开头的问号 var qs = location.search.length?location.search.substring(1):''; //创建一个对象用来参数 var args = {}; //取得参数 var items = qs.lengt...
2018-07-11 17:52:02
302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人