自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 第四章 栈

1. 栈的实现function Stack() { this.dataStore = []; // 保存元素 this.pop = pop; this.push = push; this.pee

2017-06-18 19:00:53 1107

原创 第三章 列表

列表的抽象数据类型定义 属性/方法 描述 listSize(属性) 列表的元素个数 pos(属性 列表的当前位置 length(属性) 返回列表中元素的个数 clear(方法) 清空列表中的所有元素 toString(方法) 返回列表的字符串形式 getElement(方法) 返回当前位置的元素 insert(方法) front(方法)

2017-06-18 15:49:01 651 4

原创 JavaScript 遍历DOM树

1. 前序遍历function preOrder(node){ if(node){ arr.push(node); preOrder(node.firstElementChild); preOrder(node.lastElementChild); }}2. 中序遍历function inOrder(node){ if(nod

2017-04-25 15:44:48 1688

原创 javascript实现常见的算法

1. 快速排序// 快排function quickSort(arr) { if (arr.length < 2) { return arr; } var pivIndex = Math.floor(arr.length/2); var piv = arr.splice(pivIndex, 1)[0]; var left = [], righ

2017-04-24 16:04:05 470

原创 nodejs使用redis作为缓存介质,封装缓存类

之前在node下使用redis作为缓存介质,对redis进行了一层封装First: 安装npm包 redisconst redis = require('redis');Second: 进行封装// cache.jsconst redis = require('redis');const config = require('config');const logger = require('wi

2017-02-17 13:33:56 3953

原创 对前端js代码添加测试:Error: jQuery requires a window with a document

在对前端的js代码添加测试的时候,因为项目需要,首先把amd格式的代码改成了cmd。但是在引用index.js 进行测试的时候,一直报 Error: jQuery requires a window with a document 错误。查阅发现,较新版本的jquery里没有jsdom,所以在node中调用jquery的时候,会报 Error: jQuery requires a window wi

2016-11-30 18:31:02 1869

原创 istanbul 忽略多个文件

这是在自己写测试的时候遇到的问题,因为有些不必要的文件,在计算覆盖率时候会被计算到。以下是自己查到的一些如何忽略整个文件的方法。1. 忽略单个文件在文件首行加入 /* istanbul ignore next */,这样就可以忽略整个文件。2. 忽略多个文件如果想要忽略多个文件的时候,我们可以在每个文件前都加上 `/* istanbul ignore next */`, 但这非常麻烦,也不方便修改

2016-10-19 10:30:36 4619

原创 require.js 主要用法

1. 诞生实现 js 文件的异步加载,避免网页失去响应管理 js 文件间的依赖关系,便于代码的编写及维护2. 加载require.js<script src="js/require.js" defer async="true" ></script>* 注: async设置为true,来异步加载requirejs,避免阻塞。ie不是被async,所以还要加上defer。*3. 基本APIr

2016-10-07 22:58:32 1834

原创 nodejs 写脚本进行数据刷新的时候,批量处理的数据量过大出现内存溢出

很简单~使用async——异步流程控制库就可以解决。async.forEachLimit();当集合中元素很多,不能一次全部并行操作,又不想一个一个按顺序来,可以使用forEachLimit函数。它可以设定一批处理几个,每一批内并行执行,批与批之间顺序执行。async.forEachLimit(eles, 5000, (list, cb) => { // do something;});

2016-09-19 15:14:58 2767

原创 Javascript高级程序设计读书笔记——继承

javascript 继承的几种方式。1. 原型链继承 2. 借用构造函数(伪造对象或经典继承) 3. 组合继承 4. 原型式继承 5. 寄生式继承 6. 寄生组合式继承

2016-08-27 00:03:17 681

原创 javascript高级程序设计读书笔记———创建对象

2. 创建对象的几种方式2.1 工厂模式function createPeople(name, age, job) { var o = new Object(); o.name = name; o.age = age; o.job = job; o.sayName = function(){ console.log(this.name);

2016-08-24 23:56:43 524

原创 通过UEditor多图上传到七牛云出现图片不全,或上传失败bug

在node-ueditor进行拓展,通过多图上传直接将图片保存到七牛云。在保存的时候通过busboy包进行文件流保存 bug: 发现多张图片上传时候,部分图片出现上传失败,或显示出得图片只有一半的情况。仔细查看代码后,觉得应该是busboy进行文件保存的时候,还没有保存完毕,就进行了七牛上传。 bugFix: busboy.on('file', function(fieldname, file

2016-08-23 22:43:57 2666

原创 对restful 理解

1. 什么是restful    REST——Representational State Transfer,表现层状态转移。     如果一个架构符合rest原则,就称它为restful架构。    理解restful架构,首先要理解restresources 表现层指的其实就是“资源”(resources)的表现层representationstate transfer

2016-08-17 16:38:07 544

原创 javascript高级程序设计读书笔记——事件总结

第13章 事件1.1 事件冒泡    事件开始的时候从最具体的元素接收,然后逐级向上传播到较为不具体的节点。1.2 事件捕获    事件捕获与冒泡相反,首先由不具体的节点接收,最后是最具体的节点接收事件。    注意: ie的事件流是事件冒泡。由于老版本的浏览器不支持事件捕获,因此更加建议使用事件冒泡,有特殊需要的时候在使用事件捕获。1.3 DOM事件流    D

2016-08-16 00:34:01 1773

翻译 Simple server side cache for Express with Node.js——Express 实现简单的服务器端缓存【翻译】

原文地址在这里: http://goenning.net/2016/02/10/simple-server-side-cache-for-expressjs/第一次翻译,不是很好,但大概意思应该还可以。有错误,请多多指正。    express是我目前为止见过扩展性最好的web框架。它的中间件结构使它可以轻松地以标准化方式添加额外的功能。     本次主题,我们将会讨论一个很小很简单,但功能非常强

2016-08-15 01:10:37 3557

原创 javascript高级程序设计读书笔记--DOM总结

1. node类型 nodeType———-常用noode类型——Node.ELEMENT_NODE(1) 元素节点Node.ATTRIBUTE_NODE(2) 属性节点Node.TEXT_NODE(3) 文本节点 确定节点类型if(somenode.nodeType == Node.ELEMENT_NODE){ // 在ie下无效 console.log("this

2016-08-13 16:08:50 459

原创 javascript高级程序设计读书笔记--BOM

对BOM进行一下总结1.  location 对象location既是window也是document的属性,所以二者在使用的时候引用的是同一个location对象location参数解析:   location.href: 返回完整的urllocation.host: 返回主机名和端口号。 eg: www.baidu.com:80location.hostname

2016-08-13 12:50:22 452

原创 页面偶尔出现查询/页面刷新错误,ejs出现类型报错/方法报错

在做项目的时候碰到一个坑。在此记录下来。    nodejs项目,使用的是LRU-cache 。前端使用的是ejs模板引擎    在页面上点击按钮,进行查询的时候,刷新页面,显示查询结果(结果内含有一个日期数据)。但是发现有一定几率刷新成功,一定几率报错。错误信息为date不存在getFullYear()方法。觉得很奇怪,因为查看数据的明明是Date类型。后来干脆将 typeo

2016-08-12 18:50:23 2392

原创 七牛云存储 远程抓取图片保存到指定空间(nodejs版),以及自定义key

最近两天老师给布置了一个小任务。有一个页面用到了UEditor文本编辑器,用户经常会直接粘贴整篇文档到编辑区,包括很多图片。图片的来源都是粘贴来源的地址,这可能大大影响图片的加载效率,以及如果源地址删除该图片,文章也无法正常显示。我要做的就是从该文章中,提取所有的图片,保存到内部云存储。这样,每次显示文章,就能直接从自己的云存储加载图片。首先,我的大概思路是: 获取正片文章内容,正则匹配出所有

2016-08-01 14:55:21 4657

转载 Sequelize 和 MySQL 对照

如果你觉得Sequelize的文档有点多、杂,不方便看,可以看看这篇。在使用NodeJS来关系型操作数据库时,为了方便,通常都会选择一个合适的ORM(Object Relationship Model)框架。毕竟直接操作SQL比较繁琐,通过ORM框架,我们可以使用面向对象的方式来操作表。NodeJS社区有很多的ORM框架,我比较喜欢Sequelize,它功能丰富,可以非常方便的进行连表查询

2016-07-26 18:00:06 5036 2

原创 前端开发实习日记 -2

这周开始在导师的带领下尝试些功能点。因为以前没有真切接触过nodejs开发,尽管看了一些教程,但水平远远不够。只是让我写一个小接口,也用了整整一天时间。但是主要是功能点虽然不麻烦,但是涉及到的插件及库都没有接触过,所以必须不断百度,理清代码。而且代码弄清楚之后,尽管知道实现功能的思路,但就是不知道该怎么下手。不过总算是挣扎着写出了代码。下面来总结一下自己的收获。一. Async:Asy

2016-07-26 14:28:14 22928 1

原创 写给自己的文章~前端开发实习总结

7.11号,我正式开始实习啦。实习第一天,配置环境整整一天,因为大家都忙,来的时候也没有带书什么的,我也就只能眼巴巴地瞅着电脑屏幕发呆。第二天,在导师的要求下,上午看了ejs模板引擎的使用,下午看git基本操作的文档。一天下来头晕眼花。到了4,5点的时候,和我一起工作的姐姐就来指导我开始干活了~因为是实习生,任务很简单,就是从后台给出的数据,按照数据格式,进行ejs模板页面的数据嵌套。同时

2016-07-23 09:34:35 24209 1

原创 javascript 以及 jquery DOM节点操作

DOM节点父节点: parentNode,子节点:childNodes首个子节点:firstChild末尾子节点:lastChild兄弟子节点:nextSlibling、previousSlibling原生Javascript:1. appendChild()。插入新的节点到节点列表末尾,返回的是新插入的节点。2. insertBefor

2016-06-02 19:43:01 1091

原创 JavaScript高级程序设计读书笔记——String总结

1.  string类型的创建var str = new String(s);var str = "abcdefg";2. 判断是否为String类型         instanceOf                 判断是否为String类型3.  字符串中字符的查找charAt(index)              返回

2016-05-05 23:39:36 461

原创 javascript高级程序设计读书笔记——Array总结

1. 数组的创建          var array = new Array();          var array = new Array(5);创建长度为5的数组。(但上限并非是5.如果元素个数超过5,数组长度也会改变)          var array = new Array(1,2,3,4,5 ...); 创建元素为 1,2,3,...的数组

2016-05-05 21:06:14 562

转载 js中cookie的使用详细分析

cookie概述 在上一节,曾经利用一个不变的框架来存储购物栏数据,而商品显示页面是不断变化的,尽管这样能达到一个模拟 全局变量的功能,但并不严谨。例如在导航框架页面内右击,单击快捷菜单中的【刷新】命令,则所有的JavaScript变量都会丢失。因此,要实现严格的 跨页面全局变量,这种方式是不行的, JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求。c

2016-05-04 16:54:07 315

原创 html5 + jq 实现图片上传预览,兼容主流浏览器

图片上传预览 function preview(imgobj,previewImgId,previewDivId){ var accept = /^(.+)\.(jpg||jpeg||png||gif)$/g; var browserVersion = window

2016-04-22 00:00:29 5629

原创 原生 js 实现全屏滚动效果

原理: 1. 计算当前浏览器屏幕高度,每次翻页显示的内容高度即为屏幕高度             2. 对鼠标滚轮事件进行监听,注意滚轮事件的浏览器兼容问题。废话不多说,直接上代码html代码:                                                                          

2016-04-16 20:28:02 9192

转载 有关css和js针对不同浏览器兼容的问题

首先谈一下浏览器,虽然现在ie依然是浏览器市场的老大,大约占有67%的份额,但是由于其各方面的欠缺,用户开始选择其他浏览器作为自己浏览网页的主要 工具,比如firefox、theworld、maxthon、chrome、opera等等,在用户使用比较多的浏览器中,分为2大派系 - ie内核和非ie内核,像theworld、maxthon、greenbrower等等都属于ie内核,而firefox、

2016-04-13 13:33:14 4836

原创 jquery实现图片轮播效果

html 部分 css部分#lunbo{width: 600px;height: 300px;margin: 0 auto;overflow: hidden;} #pics{width: 600px;height: 300px;cursor: pointer;position: relative;} ul li{width:

2016-03-26 23:12:37 1082

原创 原生javascript 简易实现放大镜效果

原理: 其实所谓的放大就是准备两张一样的图片,除大小不一样。鼠标移动到不同位置,将会显示大图片对应的图片内容。 放大镜效果 var filter = document.getElementById('filter'); var smallImg = document.getElemen

2016-03-16 20:09:07 636

原创 JavaScript高级程序设计读书笔记—— 基本数据类型

一、javaScript数据类型5种基本数据类型1. undefined2. null3. boolean4. number5. string以及一种复杂数据类型  objectundefined 类型只有一个值,即undefined;

2015-11-15 22:11:24 625

原创 css实现左右布局,左侧div固定不变,右侧div宽度自适应

1.如果不考虑浏览器的兼容问题的话,可以使用css3的新增属性 calc()  ;calc是calculate的简写,汉语为计算的意思。.left{ width: 200px; float: left; height: 200px; background: pink;}.right{ float: left; width: calc(100% - 200px);

2015-11-15 20:12:18 14337

转载 背景图片如何自适应屏幕

自己比较头疼的问题,网上搜了好多资料,大概整理了一下1. 直接设置CSS样式达到目的   在以上代码中,background-size: cover;是对背景图进行等比例拉伸,仍然存在图片显示不完全的问题。      background-size: 100% 100%;是对背景图的宽拉伸至di

2015-10-12 23:59:57 57900

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除