2016年9月1日

摘要: 分块传输的原理就是利用HTML5新增的文件slice截取函数。 代码如下: html: <input id="f" type="file" name="part" onchange="writeFile()"> JS: 核心部分已经加粗显示了,其他部分不用看,因为实现的方式有很多种,不一定要按照我的 阅读全文

posted @ 2016-09-01 22:21 追梦子 阅读(1115) 评论(0) 推荐(0) 编辑

摘要: 对于HTML5已经支持AJAX文件上传了,但如果需要兼容的话还是得用一点小技巧的,HTML5等等介绍,先来看看以前我们是怎么写的。 网上可能会有一些叫AJAX文件上传插件,但在AJAX2.0之前是不可能实现的,因为浏览器的原因,AJAX根本获取不了文件信息,当然这里并不是说就不能文件上传了,只是说在 阅读全文

posted @ 2016-09-01 17:27 追梦子 阅读(631) 评论(1) 推荐(0) 编辑

2016年8月31日

摘要: AJAX的原理是什么? 实际上就是发起HTTP请求,既然就是发起HTTP请求,那只要我们能够实现发起HTTP请求就可以在不使用AJAX的情况下实现相同的效果。 在前端有好多方式可以发起HTTP请求,比如script标签的src以及图片的src,css背景图片,等等。 案例1:通过HTTP状态码204 阅读全文

posted @ 2016-08-31 21:02 追梦子 阅读(2063) 评论(0) 推荐(0) 编辑

2016年8月29日

摘要: 这是一篇实践教程,能够让你更加深刻的理解HTTP协议,因此需要一定的HTTP基础。 协议:一种规定,规定了你应该怎么去做,如w3c规定了浏览器应该怎么去解析HTML,CSS,JS。而HTTP则规定了客户端怎么和服务器端进行数据传输,简单来说就是我们得按照它的格式去写。 前几天花了点时间学习HTTP协 阅读全文

posted @ 2016-08-29 20:41 追梦子 阅读(4721) 评论(0) 推荐(0) 编辑

摘要: 1.安装webpack npm install webpack -g 2.进入项目目录,初始化 npm init 3.将webpack安装到项目依赖中 npm install webpack --save-dev 4.创建一个webpack.config.js配置文件 module.exports 阅读全文

posted @ 2016-08-29 16:59 追梦子 阅读(906) 评论(1) 推荐(0) 编辑

2016年8月28日

摘要: 有时往往我们需要建一个文档来记录js中的一些代码注释,比如一些公共的函数,又或者一些类,在团队合作中,文档接口也是必不可少的,传统的方式多少有些不便,这里介绍一个工具,它叫JSDOC,它可以用来将注释生成文档。 虽然说是说它可以把注释生成文档,但是也不是什么注释都可以的,我们需要按照它的规范来写。 阅读全文

posted @ 2016-08-28 10:07 追梦子 阅读(9073) 评论(0) 推荐(0) 编辑

2016年8月27日

摘要: 对于面向对象大家肯定都有多多少少的了解,这里所说的OOCSS就是说面向对象的CSS,得说明的是OOCSS并不是一门新语言也不是什么库,而是一种概念和javascript面向对象一样。 可能你这样写过CSS代码 #box>.item{ margin:10px; float:left; text-ali 阅读全文

posted @ 2016-08-27 22:42 追梦子 阅读(347) 评论(0) 推荐(0) 编辑

2016年8月25日

摘要: HTTP数据传输协议 当访问一个网页时,浏览器会向服务器发起一条HTTP请求,接着服务器会去寻找相应的资源,如果请求成功,就会把这个对象,对象类型,对象长度以及其他的信息放在HTTP响应中,发送给客户端。 因为资源种类太多,所以WEB服务器在返回响应时会为HTTP对象附加一条MIME类型(数据类型) 阅读全文

posted @ 2016-08-25 12:06 追梦子 阅读(341) 评论(0) 推荐(0) 编辑

2016年8月24日

摘要: 首先去Qunit官网下载。 Qunit有一个js脚本文件和一个css我们在页面中引入它。 <script src="qunit-2.0.1.js"></script> <link rel="stylesheet" href="qunit-2.0.1.css"> 页面中有两段必须的标签。 <div i 阅读全文

posted @ 2016-08-24 11:17 追梦子 阅读(1017) 评论(0) 推荐(0) 编辑

2016年8月23日

摘要: 之前没感觉要学啥单元测试,项目中测试都是手动测的,但也没觉的啥,但最近看文章和招聘上也多多少少有这方面的需求,于是网上搜索了一下,只找到了一些文章,但介绍的都不是很详细或者说比较复杂,满满的伤,虽然看懂一部分,但还是不知道有啥用,于是不了了之了。 但是就在今天又在某本书上讲啥测试,实在坐不住了,于是 阅读全文

posted @ 2016-08-23 21:40 追梦子 阅读(936) 评论(2) 推荐(1) 编辑

摘要: 这更像是一篇为自己而写的文章,没有过多的解释,sorray。 关于:return function fn(num){ var a = num; if(a>1){ a = num + 1; return a; }else if(a<1){ a = 0; return a; }} 可以写成这样 func 阅读全文

posted @ 2016-08-23 14:06 追梦子 阅读(654) 评论(0) 推荐(0) 编辑

2016年8月21日

摘要: 因为是学习笔记,里面并没有很多注释和讲解,所有不太适合0基础的朋友看,只能说抱歉了。 这些笔记目前还存在很多的问题,不过我相信再今后的学习过程中会把这些问题挨个的解决。 除了前面3节后面的都不分前后顺序。 初了解JS设计模式,学习笔记 1 设计模式之封装,学习笔记 2 设计模式之原型,学习笔记 3 阅读全文

posted @ 2016-08-21 17:42 追梦子 阅读(281) 评论(0) 推荐(0) 编辑

摘要: 比如在多个条件判断中,也许条件会被更改这样的话,我们又得重新写过,策略模式就是解决这个问题。 var get = { A:function(){ console.log('a'); }, B:function(){ console.log('b'); }}; var getAB = function 阅读全文

posted @ 2016-08-21 17:34 追梦子 阅读(368) 评论(0) 推荐(0) 编辑

摘要: 所谓的单例模式就是说一个对象,我们只去实例化一次,在页面中如果有一个对象是唯一的,那么就可以用单例模式。 var Fn = function(name){ this.name = name;}; Fn.prototype.getName = function(){ return this.name; 阅读全文

posted @ 2016-08-21 17:26 追梦子 阅读(324) 评论(0) 推荐(0) 编辑

摘要: 不直接操作实体对象,而是借助另外一个对象来操作它,这样的话,我们可以在实体对象编写核心代码,而用代理对象来编写条件等等,如果满足就访问实体对象。这样的话当你不需要条件的时候,我们只是需要把代理对象删除,其他的都不不用去改变。简单来讲所谓的代理模式就是通过另外一个人来帮它完成一部分的任务,减轻压力。如 阅读全文

posted @ 2016-08-21 17:09 追梦子 阅读(383) 评论(0) 推荐(0) 编辑

2016年8月20日

摘要: 先介绍一下js中的高阶函数,所谓的高阶函数就是,一个函数中的参数是一个函数或者返回的是一个函数,就称为高阶函数。 js中已经提高了一下高阶函数,使用起来非常棒,当然我们也可以自己实现,我介绍几种ES5/ES6新增的数组函数。 首先是forEach,forEach它接受两个参数,第一个函数,第二个传一 阅读全文

posted @ 2016-08-20 00:24 追梦子 阅读(609) 评论(0) 推荐(0) 编辑

2016年8月19日

摘要: 为什么需要这些?主要是因为this,来看看this干的好事。 box.onclick = function(){ function fn(){ alert(this); } fn();}; 我们原本以为这里面的this指向的是box,然而却是Window。一般我们这样解决: box.onclick 阅读全文

posted @ 2016-08-19 12:00 追梦子 阅读(13053) 评论(8) 推荐(4) 编辑

摘要: 在常见的编程语言中如果你需要一个对象,那么可以通过类来创建,但是Javascript它并没有类这个概念,javascript创建对象是通过克隆另外一个对象而来的,既然如此那么它肯定有一个基类,这个基类就是Object.prototype,这是一个顶级根对象,其他所有对象都是通过克隆它而来的,比如你通 阅读全文

posted @ 2016-08-19 09:09 追梦子 阅读(416) 评论(0) 推荐(0) 编辑

2016年8月18日

摘要: 封装即把代码隐藏起来,why?好好的为什么要隐藏起来,这里指的隐藏并非真的隐藏,而是把一些复杂的代码给包裹起来,留下的是一个接口,到时候要用的时候直接调用这个接口即可,这样那些不是干技术的也可以轻松上手了。有时我们还会把一些私有属性属性给封装起来,如下: function fn(){ var _na 阅读全文

posted @ 2016-08-18 20:21 追梦子 阅读(841) 评论(0) 推荐(1) 编辑

摘要: 什么是设计模式。 回答这个问题,往往我们得先知道我们为什么需要设计模式,正是因为有需求才会有设计模式,难道不是吗? 我们为什么需要设计模式。 如果没有按照设计模式去写,你的代码很可能是乱无肆忌写的,也就是随心所欲,想怎么写就怎么写,反正只要出效果就行,好像是没啥问题,但好像又有问题,因为你根本就不知 阅读全文

posted @ 2016-08-18 17:23 追梦子 阅读(766) 评论(1) 推荐(0) 编辑

摘要: 昨日在园子里看到几篇关于程序生涯的几篇文章博有感触,想想自己这几个月多少有些堕落了,想起刚学那会,连过年那天晚上还在看js,这些天在想自己为什么会突然的感觉迷茫了,想起有次去面试的时候,面试官问起的,你的职业规划是什么。沉默一会,技术大牛?项目经理?架构师?这些不是我听他们说的吗?为什么我也回答了这 阅读全文

posted @ 2016-08-18 12:20 追梦子 阅读(3935) 评论(18) 推荐(28) 编辑

2016年8月17日

摘要: 之前有写过闭包,作用域,this方面的文章,但现在想想当时写的真是废话太多了,以至于绕来绕去的,让新手反而更难理解了,所以就有了此篇文章,也好和闭包,作用域,this告一段落。 第一个问题:什么是闭包? 我不想回答这个问题,但是我可以告诉你的是闭包可以解决函数外部无法访问函数内部变量的问题。下面是一 阅读全文

posted @ 2016-08-17 18:14 追梦子 阅读(15466) 评论(20) 推荐(25) 编辑

2016年8月14日

摘要: 这段代码并不能说是完全用面向对象思想写的,怎么说呢,我们来看看,它一共分成了以下几个部分:创建一个构造函数,给这构造函数的原型上添加了一些方法,连tab栏也一道封装到了那个构造函数里面,这样从整体上来看的话,这整个功能更像是一个工具函数。因此并不能说它是一个完整的面向对象的例子,于是写完之后发现不对 阅读全文

posted @ 2016-08-14 12:16 追梦子 阅读(867) 评论(0) 推荐(0) 编辑

摘要: 为什么需要异步?why?来看一段代码。 问题1: for(var i=0;i<100000;i++){ } alert('hello world!!!'); 这段代码的意思是执行100...次后再执行alert,这样带来的问题是,严重堵塞了后面代码的执行,至于为什么,主要是因为JS是单线程的。 问题 阅读全文

posted @ 2016-08-14 00:19 追梦子 阅读(6201) 评论(0) 推荐(1) 编辑

2016年8月11日

摘要: 对于面向对象我只能说呵呵了,为什么呢,因为没对象~~~ 既然你看到了这里,说明你有一定的基础,虽然本系列文章并不会过多的讲述基础部分,请做好心理准备。 本篇比较简单,这篇文章的意义是让你明白学习面向对象所需要掌握东西,并且重点是什么。 前世: box:那个,你看看,你这代码也叫代码?你知道的,我们可 阅读全文

posted @ 2016-08-11 17:59 追梦子 阅读(1173) 评论(1) 推荐(1) 编辑

2016年7月30日

该文被密码保护。 阅读全文

posted @ 2016-07-30 10:21 追梦子 阅读(1) 评论(0) 推荐(0) 编辑

2016年7月24日

摘要: JS代码 使用方法: 设置cookie:setCookie()支持传递2个或3个参数 json&&time || nam&&value&&time json:{name:value},time:多久过期 读取cookie:readCookie(要读取的cookie名称) 删除cookie:remov 阅读全文

posted @ 2016-07-24 16:40 追梦子 阅读(621) 评论(0) 推荐(0) 编辑

2016年7月19日

摘要: 这是一篇菜鸟教程,这是一篇菜鸟教程,如果你是菜鸟到话。 简单来说Nodejs并不是一门新的语言,但是它可以让我们的JS运行在服务器端,在服务器端写JS代码并且输入输出,也就是说以后要是有人问你JS是不是只能运行在浏览器中,你千万别说,唉,是啊。 记得刚开始学HTML,CSS,JS的时候第一印象就是下 阅读全文

posted @ 2016-07-19 20:08 追梦子 阅读(833) 评论(2) 推荐(2) 编辑

2016年7月15日

摘要: 1.为什么javascript的变量名不使用css中的命名方法,而选择使用驼峰命名法 因为在javascript中“-”表示减法,所以如果使用“-”的话会出现不必要的问题。 2.在javascript中已经有className方法添加类名,为什么还要新增加classList.add方法 因为clas 阅读全文

posted @ 2016-07-15 11:41 追梦子 阅读(740) 评论(0) 推荐(0) 编辑

2016年7月8日

摘要: // 虽然简单但是有bug的说。。。只可远观不可 // 源 var arr = [4,5,3,2,5,6,7,8,8,9,2,5,1]; // 获取长度 var len = arr.length; // 新建一个 var arr2 = new Array(len); // 初始化为0 for(var i=0;i=0;i--){ // 如果等于0说明没有出现这个数 if(arr2[... 阅读全文

posted @ 2016-07-08 13:16 追梦子 阅读(229) 评论(0) 推荐(0) 编辑

2016年7月3日

摘要: git init 初始化仓库 git init --bare 初始化一个裸仓库 git branch 查看本地分支 git branch -a 查看全部分支 git remote 远程仓库管理 add show rename rm git add file 跟踪文件 git checkout -- 阅读全文

posted @ 2016-07-03 23:34 追梦子 阅读(176) 评论(0) 推荐(0) 编辑

2016年6月16日

摘要: wheel(function(isTrue){ console.log(isTrue); }) function wheel(callback){ if(navigator.userAgent.indexOf('Firefox') 1){ if(document.attachEvent){ docu 阅读全文

posted @ 2016-06-16 22:19 追梦子 阅读(378) 评论(0) 推荐(0) 编辑

2016年6月6日

摘要: 随便看看,需要有一点一点基础。 链接:http://pan.baidu.com/s/1c20pcOC 密码:xq2x 阅读全文

posted @ 2016-06-06 21:22 追梦子 阅读(330) 评论(0) 推荐(0) 编辑

2016年5月20日

摘要: // 方案1 var a = 0; var b = 1; var c = a; a = b; b = c; console.log(a,b); // 1 0 // 方案2 var a = 0; var b = 1; a = a + b; b = a-b; a = a-b; console.log(a 阅读全文

posted @ 2016-05-20 15:48 追梦子 阅读(335) 评论(1) 推荐(0) 编辑

摘要: 在js中通过document.getElementsByClassName()在低版本IE浏览器中不兼容。然后我写了几种方案,大家可以参考参考。 html代码 js代码 还可以将获取到的class转换成数组,然后挨个判断,不过这样反而更麻烦了。 建议通过父级再通过*获取元素,性能会好一些。 唉,感觉 阅读全文

posted @ 2016-05-20 14:06 追梦子 阅读(394) 评论(0) 推荐(0) 编辑

2016年5月17日

摘要: 一般都是在我们开发一个项目之前我们会进行一个讨论会,然后一起分析一下这个项目应该怎么去做,那些地方可以用最新的一些技术,那些技术有兼容问题,哪些可以实现,哪些不可以实现,这些讨论完以后,然后我们前端再去和后端讨论应该怎么设计接口,因为到时候ajax传输数据要用到。 当这些需求都确定以后,产品经理会做 阅读全文

posted @ 2016-05-17 18:32 追梦子 阅读(898) 评论(2) 推荐(1) 编辑

2016年5月16日

摘要: 如果一段html嵌套过多,在js中获取还是比较麻烦的,我写了几套方案,大家可以参考参考,如果你有好的方法,也分享出来,让我们瞧瞧。 HTML: 我想获取a下面的span。 思路1:先获取它的父元素,然后通过for循环诶个获取这个元素下面的元素,然后通过此次获取到的元素在依次循环获取下面的元素,直到获 阅读全文

posted @ 2016-05-16 12:37 追梦子 阅读(7641) 评论(4) 推荐(0) 编辑

2016年5月8日

摘要: 虽然写的很烂,但至少全部都是自己写的,因为这个没有固定的顺序,所以就没有封装,如果你技术好的话,可以你写的分享给我,谢谢。 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>原生JS实现分页效果</title> < 阅读全文

posted @ 2016-05-08 12:19 追梦子 阅读(5985) 评论(0) 推荐(0) 编辑

2016年5月7日

摘要: 不太完整,写的太急,等等加上完整注释,写起来还是有些难度的,写的有点水,后面再改进改进。 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>原生JS实现分页效果</title> <style> body{ marg 阅读全文

posted @ 2016-05-07 01:01 追梦子 阅读(2586) 评论(0) 推荐(1) 编辑

2016年5月2日

摘要: 1. 合理的分配时间 在某个固定的时间点学习。当感觉注意力不集中的时候休息一段时间。2. 建立整体观,搭建知识结构。 看一篇文章先看整体结构和互相之间的依存关系,在深入学习,更具自己的实际情况看是否适合学习这篇文章或者这本书。 第一遍:快速浏览目录和内容,内容不必深究,主要建立起对书本内容的整体认知 阅读全文

posted @ 2016-05-02 17:49 追梦子 阅读(1005) 评论(2) 推荐(1) 编辑