- 博客(16)
- 收藏
- 关注
原创 异步神器--async
一、含义学过ES6的同学大概都熟悉Generator函数,那么async可以说是Generator的语法糖,它让异步操作变得更加方便。二、语法特点const asyncDemo = async function () { await fn(); await fn2(); await fn3(); }asyncDemo();可以看出async函...
2018-08-05 23:18:37
601
原创 记录一下HTTP状态码
100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Up...
2018-07-29 10:27:43
552
原创 使用js实现Promise
一、什么是promisePromise的出现,原本是为了解决回调地狱的问题。以我们平常使用的ajax请求为例:传统js方法:getData(method, url, successFun, failFun){ var xmlHttp = new XMLHttpRequest(); xmlHttp.open(method, url); xmlHttp.send(); xmlHttp....
2018-07-15 18:14:45
4279
转载 在使用es6语法class的时候,babel到底做了什么?
自从有了webpack之后,我们这些jscoder似乎得到了前所未有的解放,箭头函数,对象解构,let,const关键字,以及class、extends等等关键字使用得不亦乐乎,反正,webpack会帮我们把这些es6代码转换成浏览器能够识别的es5代码,那么,我们有多少人真正的看过,babel转换之后的代码呢?今天,我就来看一下,当我们使用关键词class的时候,babel到底做了什么?我推荐打...
2018-07-15 10:30:26
1312
原创 JavaScript设计模式--原型模式
function Person(){}Person.prototype.name = "jianweis";Person.prototype.age = "22";Person.prototype.job = "no";Person.prototype.sayName = function(){ alert(this.name);}var person1 = new Person...
2018-07-08 14:22:46
218
原创 JavaScript的设计模式--工厂模式和构造函数模式
一、工厂模式function createPerson(name, age, job) { var o = new Object(); o.name = name; o.age = age; o.job = job; o.sayName = function(){ alert(this.name); } return o;}var pe...
2018-07-07 21:20:56
332
1
原创 localStorage使用时的注意点
一、localStorage,sessionStorage,cookie的简单介绍localStorage:仅在客户端存储不参与服务器通信,存储大小一般为5M,如果不是人为清除,那么即使是关闭浏览器也会一直存在。sessionStorage:仅在客户端存储不参与服务器通信,存储大小一般为5M,会话级存储,也就是说如果关闭当前页面或者浏览器那么就会清除cookie:客户端存储,参与服务器通信,存储大...
2018-06-17 19:07:16
8082
原创 鼠标控制滚动条滚动
当在做带表格的项目时候会发现有一个问题,那就是如果列数过多的话阅读起来很不方便,通常列数多到超过窗口,我们会设置横向滚动条来隐藏多余的列数,如下图但这随着行数的增加就又出现一个问题那就是要控制横向滚动条就得将页面移动到最底才能看到滚动条,这让我们的需要不断地移动页面来达到控制滚动条的效果为了解决这个问题,我做了一个鼠标在表格的任意一个位置按住并向左或者向右拖动便能控制横向滚动条的移动。首先我们要在...
2018-06-07 22:03:40
1913
原创 使用js实现html5的拖拽----升级版
记得在学习html5的时候有一个拖拽的功能 --- drag和drop,后来看到五百丁简历的简历模板也有这功能,但是都有一个局限性,那就是不能随意拖动到任何位置,会有一定的限制。于是想自己实现一个可以完全自由定义模板的简历demo,如下图是简单的一个实现:可以看到里面的元素可以自由地移动所在的位置,可以用这个来实现简历模板的自定义(还未完善)那么如何来实现元素的自定义位置拖拽呢我给大家提供以下代码...
2018-06-04 23:47:56
1008
原创 JavaScript DOM事件中一些对于浏览器的兼容问题
1、绑定事件处理程序function addEvent(element,type,func){ if(element.addEventListener){ element.addEventListener(type,func,false); }else if(element.attachEvent){//兼容IE element.attachEven...
2018-06-04 11:15:39
1494
原创 一些好看的css样式
最近看了了一本书叫《css揭秘》,里面的内容让我有种css原来能真没玩的感觉,哈哈哈。在这里跟大家分享一部分里面的样式,有兴趣的可以去看看。这本书有电子版。先看看效果图:那个蚂蚁行军框是可以动的,有趣html代码,想要看那个css样式就用对应的className<div class="box1"><h1>css回退样式</h1></div> <...
2018-06-03 15:25:19
13198
1
转载 JS中实现简单实用的HashMap
转发一篇不错的文章,使用js实现简单实用的HashMap,功能很齐全原地址:https://blog.youkuaiyun.com/ouyang111222/article/details/47173195/* *hashmap 1.0.0 * description:this haspmap is a data structure which is used in the js file and it...
2018-06-01 15:57:39
1487
原创 几个js面试笔试题
//数组去重,需要考虑到{} //第一种,借用对象关键字的唯一性 function uniq(arr) { let turnObject = {};//对象关键字的唯一性 let uniqArr = []; for(let i = 0, l = arr.length; i < l;i++){ if(!turnObject[arr[i]] |...
2018-05-27 16:11:21
2760
原创 CSS3 的视口单位vw、vh实现自适应(带有px,em,rem的简单介绍)
一、px,em,rem,vw的简单介绍1、pxpx其实就是像素的意思,全称pixel,也就是图像的基本采样单位。对于不同的设备,它的图像基本单位是不同的,比如显示器和打印机。而我们通常所说的显示器分辨率是指桌面设定的分辨率,不是显示器的物理分辨率,但是现在我们的桌面分辨率和物理分辨率几乎是一致的,因为这样显示效果最佳。所以总的来说px就是对应我们显示器的分辨率。这样就会有个问题就是如果使用px的话...
2018-05-26 15:15:27
238478
3
原创 JQuery实现下拉框搜索用户名
近期在项目中有用到搜索用户的功能,于是自己使用JQuery写了一个在输入框填写名字然后在下拉框中出现相对应的名字一、思路在取数据方面刚开始是有两个方案,第一个方案是在页面load的时候直接请求API将所有的用户名信息都取出来然后保存在数组中,然后在搜索时从中取数据。第二个方案是在搜索时根据输入框的信息实时调用API取数据。由于考虑到如果用户量很多的话在load页面请求数据势必会造成一定的影响,所以...
2018-05-23 00:20:38
1586
原创 CoffeeScript 的简介与代码实例
前段时间公司的一个项目是用CoffeeScript和backbone写的,于是去学了一下CoffeeScript,在此给大家分享一下CoffeeScript--简介 我们知道JavaScript是硬绑了C/Java语法,但CoffeeScript却不是,而是改为采用了类似Ruby/Python的语法,所以可以说,采用了这种语法之后,CoffeeScript更加适合函数式+动态语言内核的 ...
2018-05-20 00:21:20
2027
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人