![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
菜鸟的传奇人生
这个作者很懒,什么都没留下…
展开
-
js手写双向数据绑定
js手写双向数据绑定利用Object.defineProperty进行数据的双向绑定。HTML代码:<body> <span id="span"></span></body>js代码var obj = { val:'张三', }; var val = ''; Object.defineProperty(obj,'val',{ get:function(){ r原创 2020-07-09 19:17:50 · 442 阅读 · 0 评论 -
js实现单例设计模式
js实现单例设计模式 // js手写单例设计模式 var Singleton = (function(){ var instance = null; function Singleton(name){ this.name = name; } return function(name){ if(!instance){ instance = new Si原创 2020-07-09 11:29:25 · 291 阅读 · 0 评论 -
js实现桶排序
实现桶排序的js代码 function bucketSort(arr,bucketCount){ result = [] minValue = arr[0] maxValue = arr[0] // 找出最大值和最小值,为给每个桶分配大小做准备 for(let i=0;i<arr.length;i++){ if(arr[i]<minValue){ min原创 2020-06-28 16:19:12 · 1158 阅读 · 1 评论 -
js中迭代器和生成器
一、迭代器迭代器用来遍历数组,对象等,具有next方法手写迭代器 function createIterator(items) { var i = 0 return { next: function () { if (i < items.length) { done = false } else{原创 2020-06-28 15:30:31 · 734 阅读 · 0 评论 -
用闭包实现每隔一秒输出Hello world!
一、闭包的概念一个函数A中,定义了一个函数B,当函数B中用到了函数A中的变量或者对象时,我们则称闭包产生,闭包的存在可以避免函数内部局部变量的空间回收,如下程序中,count变量不会因为print函数执行完而被回收二、代码 function print(){ var count = 0; return function(){ p = setInterval(() => { if(count<3){原创 2020-06-27 20:26:34 · 805 阅读 · 0 评论 -
js实现千分位加逗号
一、实现千分位加逗号(1)将数字转化为字符串处理(2)考虑到有小数点的情况,将整数部分和小数部分分离(3)每隔三位加一个逗号(4)返回结果代码如下:var a = 222333444.12function addDou(num) { var numArr = num.split('.') num = numArr[0] var result = '' while(num.length>3){ result = ','+num.sl原创 2020-06-27 11:29:51 · 4390 阅读 · 0 评论 -
CSS实现垂直居中的三种方式
一、设置待居中元素的行高等于其高度.test{ height:200px; width:200px; background-color: brown; line-height: 200px; }<div class="test"> 你好啊 </div>二、通过相对定位和负边距来实现html,body{ width原创 2020-06-26 14:54:12 · 185 阅读 · 0 评论 -
js实现链表反转
一、实现链表反转function Node(data){ this.data = data this.next = null } a = new Node(1) b = new Node(2) c = new Node(3) a.next = b b.next = c function reverseNodeList(head){ let newHead = null if(head =原创 2020-06-26 14:39:12 · 544 阅读 · 0 评论 -
基于vue和nodejs的智能聊天室的实现
项目github地址:项目地址项目效果预览:(不太擅长设计页面,有点花里胡哨)一、项目准备node环境搭建本地创建的mysql数据库二、创建mysql数据库在本地创建一个exercise的数据库,在数据库中创建一个user的数据表,这张数据表中存放了用户相关信息和其好友关系字段有id,username,password,friends其中friends存放每个用户的好友id,以逗号隔开三、设计前端页面----登录注册页面的设计按照上图进行登录注册页面设计,用户填写登录信息后,原创 2020-06-07 16:53:09 · 1382 阅读 · 1 评论 -
基于jQuery的轮播图的实现
一、什么是轮播图我们经常可以看到一些网站几张图片轮流播放,右下角还有几个小白点可以让图片静止,这就是轮播图二、轮播图的实现我们可以定义一个img标签,设置定时器,每隔一段时间改变img标签中src属性的值,这里的定时器用到了setInterval()并且右下角的小圆点由无序列表来设置,鼠标移到身上即让定时器静止,并显示该小圆点对应的图片这里采用jQuery来实现html代码:<div id="main"> <img src="0.jpg" alt="">原创 2020-05-25 20:26:48 · 1308 阅读 · 0 评论 -
jQuery实现鼠标拖拽事件
1、设置一个待拖动的元素,设置样式<ul> <li>linux</li> <li>java</li> <li>javascript</li> </ul>*{ margin:0; padding:0; } ul{ list-style: none;原创 2020-05-16 19:26:56 · 5767 阅读 · 0 评论