- 博客(45)
- 资源 (1)
- 收藏
- 关注
原创 浏览器端测试:mocha,chai,phantomjs
目标: 建立一个 lesson7 项目,在其中编写代码,我们在lesson7中新建一个文件夹命名为 vendor 这次我们测试的对象是之前提到的 fibonacci 函数此函数的定义为 int fibonacci(int n)- 当 n === 0 时,返回 0;n === 1时,返回 1;- n > 1 时,返回 fibonacci(n) === fibonacci(n-1) +
2016-06-30 18:53:06
1758
原创 测试用例:mocha,should,istanbul
目标: 建立一个 lesson6 项目,在其中编写代码。main.js: 其中有个 fibonacci 函数。此函数的定义为 int fibonacci(int n)- 当 n === 0 时,返回 0;n === 1时,返回 1;- n > 1 时,返回 fibonacci(n) === fibonacci(n-1) + fibonacci(n-2),如 fibonacci(10)
2016-06-30 18:52:18
537
原创 使用 async 控制并发
目标: 新建一个 lesson5 项目,在其中编写代码。 代码的入口是 app.js,当调用 node app.js 时,它会输出 CNode(https://cnodejs.org/ ) 社区首页的所有主题的标题,链接和第一条评论,以 json 的格式。注意:与之前不同的是,并发连接数需要控制在 5 个。知识点: 1. 学习 async(https://github.com/caolan/a
2016-06-29 20:21:51
2156
原创 eventproxy 控制并发
目标: 建立一个lesson4项目,输出CNode(https://cnodejs.org/ ) 社区首页的所有主题的标题,链接和第一条评论,以 json 的格式。知识点: 1. 体会Node.js的callback hell之美2. 学习使用eventproxy控制并发 在lesson3中我们介绍了如何使用 superagent 和 cheerio 来取主页内容,那只需要发起一次 htt
2016-06-29 20:20:36
1030
原创 使用 superagent 与 cheerio 完成简单爬虫
目标: 建立一个 lesson3 项目,在其中编写代码。 当在浏览器中访问 http://localhost:3000/ 时,输出 CNode(https://cnodejs.org/ ) 社区首页的所有帖子标题和链接,以 json的形式。知识点:1. 学习使用 superagent 抓取网页2. 学习使用 cheerio 分析网页Node.js中异步的场景运用的很多,其中爬虫的场景就比较适
2016-06-28 11:07:32
1282
1
原创 学习使用外部模块
目标:建立一个 lesson2 项目,在其中编写代码。 当在浏览器中访问http://localhost:3000/?q=alsotang时,输出alsotang的 md5 值,即 bdd5e57b5c0040f9dc23d430846e68a3。挑战:访问http://localhost:3000/?q=alsotang时,输出alsotang的 sha1(安全哈希算法)值,即 e3c766
2016-06-27 08:11:47
532
原创 一个简单的express应用
知识点:包管理器 npm 。使用 npm 安装包,并自动安装所需依赖。框架 express 。学习新建 express 实例,并定义 routes ,产生输出。包管理器 npmnpm 可以自动管理包的依赖。只需要安装你想要的包, 不必考虑这个包的依赖包。在 PHP 中, 包管理使用的 Composer, python 中,包管理使用 easy_install 或者 pip,ruby 中我们使用
2016-06-26 20:46:39
417
原创 Express.js安装
Express是Node.js最欢迎的Web开发框架,能大大地加快Node.js的网站开发速度。我们可以透过以下指令安裝Express.js: npm install -g express-generator - -
2016-06-26 17:18:21
291
原创 MongoDB简介
MongoDB简介NoSQL简介NoSQL(Not Only SQL 缩写 ):由提供缺乏传统SQL关系数据库的严格限制模型的存储和检索技术组成。NoSQL背后的主要冬季是简化设计、水平扩展、以及对数据的可用性进行更精细的控制。 NoSQL的思路是打破关系数据库的传统结构,并允许开发人员用更紧密地契合了其系统数据流需求的方法实现模型。NoSQL数据库的实现方式可能永远无法用传统的关系数据库来构造。
2016-06-17 17:07:28
489
原创 Node.js EventEmitter
Node.js EventEmitter**前言:**Node.js 所有的异步 I/O 操作在完成时都会发送一个事件到事件队列。 Node.js里面的许多对象都会分发事件:一个net.Server对象会在每次有新连接时分发一个事件, 一个fs.readStream对象会在文件被打开的时候发出一个事件。 所有这些产生事件的对象都是events.EventEmitter 的实例。EventEmitt
2016-06-17 17:06:56
442
原创 Node.js事件模型
Node.js事件模型**前言:**Node.js应用程序在一个单线程的事件驱动模型中运行。虽然Node.js在后台实现了一个线程池来工作,但应用程序本身不具备多线程的任何概念。Node.js回调函数Node.js异步编程的直接体现就是回调。异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调
2016-06-17 17:06:28
1623
原创 Node.js简介
Node.js简介前言: Node.js之所以是一个出色的框架,主要是基于以下几个原因: - JavaScript端到端:Node.js最大的一个优点在于,它可以让你用JavaScript同时编写服务器端和客户端脚本。在决定是把逻辑放入客户端脚本还是服务器端脚本方面一直有困难。利用Node.js,你可以在客户端上编写JavaScript,并轻松地在服务器上适应它,反之亦然。
2016-06-17 17:06:01
1071
原创 AngularJS服务
AngularJS服务前言: AngularJS 中你可以创建自己的服务,或使用内建服务。 在 AngularJS 中,服务是一个函数或对象,可在你的 AngularJS 应用中使用。 AngularJS内建了30 多个服务。 $location 服务可以返回当前页面的 URL 地址。
2016-06-17 17:05:18
381
原创 AngularJS事件
AngularJS事件AngularJS Select示例: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head>
2016-06-17 17:04:43
381
原创 AngularJS模型
AngularJS模型前言: AngularJS 应用组成如下: - View(视图), 即 HTML - Model(模型), 当前视图中可用的数据 - Controller(控制器), 即 JavaScript 函数,可以添加或修改属性Scope概述scope 是模型。是一个 JavaScript 对象,带有属性和方法,这些属性和方法可以在视图和控制器中使用。
2016-06-17 17:03:51
389
原创 AngularJS简介
AngularJS简介前言: AngularJS是为了克服HTML在构建应用上的不足而设计的。HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了。 AngularJS使用了不同的方法,它尝试去补足HTML本身在构建应用方面的缺陷。AngularJS通过使用我们称为标识符(directives)的结构,让浏览器能够识别新的语法。
2016-06-17 17:03:15
292
原创 jQuery-Ajax
jQuery-AjaxjQuery-AJAX load()方法load()方法从服务器加载数据,并把返回的数据放入被选元素中 语法: $(selector).load(URL,data,callback); - URL - 必须的参数,规定您希望加载的 URL - data - 可选的参数,规定与请求一同发送的查询字符串键/值对集合
2016-06-17 17:02:26
341
原创 jQuery-HTML
jQuery-HTMLjQuery捕获/设置jQuery 中非常重要的部分,就是操作 DOM 的能力。 jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。 获得内容 - text()、html() 以及 val() - text() - 设置或返回所选元素的文本内容 - html() - 设置或返回所选元素的内容(包括 HTML 标记)
2016-06-17 17:01:42
349
原创 jQuery遍历
jQuery遍历jQuery向上遍历parent() - 返回被选元素的直接父元素parents() - 返回被选元素的所有祖先元素parentsUntil() - 返回介于两个给定元素之间的所有祖先元素jQuery向下遍历children() - 返回被选元素的所有直接子元素find() - 返回被选元素的后代元素,一路向下直到最后一个后代jQuery同节点遍历siblings()
2016-06-17 17:01:11
539
原创 jQuery属性
jQuery属性context - 在版本 1.10 中被废弃。包含被传递到 jQuery 的原始上下文(检测上下文)jquery - 返回的字符串包含 jQuery 的版本号jQuery.fx.interval - 用于改变以毫秒计的动画运行速率
2016-06-17 17:00:10
260
原创 jQuery效果
jQuery效果隐藏/显示语法: (selector).show(speed,callback);(selector).show(speed,callback); (selector).hide(speed,callback); $(selector).toggle(speed,callback);jQuery滑动效果 jQuery 拥有以下滑动方法: jQuery slideDow
2016-06-17 16:58:46
260
原创 jQuery基本语法
jQuery语法jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。 基础语法: $(selector).action()$符号定义 jQuery选择符(selector)”查询”和”查找” HTML 元素jQuery 的 action() 执行对元素的操作
2016-06-17 16:57:00
418
原创 JSON语法解析
JSON语法JSON三种类型值简单值:使用与JavaScript相同的语法,可以在JSON中表示字符串、数值、布尔值和null。但JSON不支持JavaScript的特殊值undefined.如JSON表示字符串的方式:Hello World!对象:对象作为一种复杂数据类型,表示的是一组无序的键值对儿。而每个键值对儿中的值可以是简单值,也可以是复杂数据类型的值。JSON中的对象与JavaScr
2016-06-17 16:55:33
469
原创 MySQL中LIKE子句与排序
MySQL中LIKE子句我们知道在MySQL中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。 WHERE 子句中可以使用等号 (=) 来设定获取数据的条件,如 “runoob_author = ‘Sanjay’”。 但是有时候我们需要获取 runoob_author 字段含有 “jay” 字符的所有记录,这时我们就需要在
2016-04-20 16:35:38
2225
原创 MySQL中的UPDATE语句和DELETE语句
MySQL UPDATE查询 如果我们需要修改或更新MySQL中的数据,我们可以使用 SQL UPDATE 命令来操作。 语法: 以下是UPDATE命令修改MySQL数据表数据的SQL语法:UPDATE table_name SET field1=new-value1, field2=new-value2[WHERE Clause]你可以同时更新一个或多个字段你可以在WHERE
2016-04-20 15:55:20
2408
原创 MySQL中的where语句
我们知道从MySQL表中使用SQL SELECT 语句来读取数据。 如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。语法SELECT field1, field2,...fieldN FROM table_name1, table_name2...[WHERE condition1 [AND [OR]] condition2.....查询语句中你可以使用一个或者
2016-04-19 15:20:36
885
原创 互联网产品经理职责及所需能力
互联网产品经理日常工作和所需技术互联网产品经理日常工作:产品定义:市场调查、用户调研、竞争分析、盈利分析、产品定义文档、产品需求文档;产品设计:功能列表、用户用例、业务流程、界面原型、交互设计;产品开发:项目管理、需求管理、用例测试、用户体验测试;产品发布:用户教育文档、销售培训、推广方案、运营策略等;产品运营:数据分析,需求改进、运营调整等。互联网产品经理需要的技术:写文档:word
2016-04-17 20:37:00
813
原创 MySQL查询数据
MySQL 查询数据MySQL 数据库使用SQL SELECT语句来查询数据。 你可以通过 mysql> 命令提示窗口中在数据库中查询数据,或者通过PHP脚本来查询数据。语法:SELECT field1, field2,...fieldN table_name1, table_name2...[WHERE Clause][OFFSET M ][LIMIT N]查询语句中你可
2016-04-10 20:10:25
436
原创 MySQL插入数据
1、插入语句MySQL插入数据MySQL 表中使用 INSERT INTO SQL语句来插入数据。 你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据。以下为向MySQL数据表插入数据通用的 INSERT INTO SQL语法:INSERT INTO table_name ( field1, field2,...fieldN )
2016-04-08 10:22:44
515
原创 MySQL数据表创建删除操作
1、创建数据表MySQL 创建数据表创建MySQL数据表需要以下信息:表名表字段名定义每个表字段以下为创建MySQL数据表的SQL通用语法:CREATE TABLE table_name (column_name column_type);以下例子中我们将在 RUNOOB 数据库中创建数据表runoob_tbl:runoob_tbl( runoob_id INT NOT NULL AU
2016-04-07 11:36:06
506
原创 MySQL数据库的基本操作
1、MySQL创建数据库使用 mysqladmin 创建数据库使用普通用户,你可能需要特定的权限来创建或者删除 MySQL 数据库。 所以我们这边使用root用户登录,root用户拥有最高权限,可以使用 mysql mysqladmin 命令来创建数据库。[root@host]# mysqladmin -u root -p create RUNOOBEnter password:******数据
2016-04-07 10:49:49
808
原创 华为OJ训练题(一)
1、字符串最后一个单词长度描述 计算字符串最后一个单词的长度,单词以空格隔开。知识点 字符串,循环运行时间限制 0M内存限制 0输入 一行字符串,长度小于128。输出 整数N,最后一个单词的长度。样例输入 hello world样例输出 5C++代码实现:#include#includeusing namespace std;voi
2016-04-06 16:59:09
1087
原创 MySQL基本概念
数据库: 数据库是一些关联表的集合。. 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。 列: 一列(数据元素) 包含了相同的数据, 例如邮政编码的数据。 行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。 冗余:存储两倍数据,冗余可以使系统速度更快。 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。 外键:外键用于关
2016-04-04 10:43:21
419
原创 动态HTML和W3C文档对象模型
1、Web标准 1994年,Tim创立了万维网联盟(World Wide Web Consortium,W3C),该组织致力于Web技术演变的管理。它主要有三个目标:提供通用的访问技术,让任何人都能使用Web开发相应的软件环境,允许用户利用Web指导Web的发展,考虑由Web引发的法律、社会和经济问题。 HTML4.01是一个相对稳定的HTML标准,其中包含
2016-04-01 09:35:26
654
原创 单链表整表创建与删除
单链表整表的创建单链表整表创建的思路:声明一个结点p和计数器变量i;初始化一个空链表L;让L的头结点的指针指向NULL,即建立一个带头结点的单链表;循环: 生成一新结点赋值给p; 随机生成一数字赋值给p指针的数据域p->data=rand(); 将p结点插入到头结点与前一新结点之间。实现代码如下:/*随机产生n个元素的值,建立带头结
2016-04-01 09:33:50
804
原创 线性表的链式存储结构
链式存储结构思想我们需要让相邻元素之间留有足够余地,那干脆不考虑相邻位置,哪里有空位置就到哪里,只是让每个元素记住它下一个元素的位置在哪里,这样,我们就可以在第一个元素时,知道第二个元素的位置(内存地址)找到它;在第二个元素时,再找到第三个元素的位置,这样所有的元素都可以通过遍历找到。链式存储结构定义为了表示每个数据元素ai与其后继元素ai+1之间的逻辑关系,对数据元素ai来说,除了存储其本身的信息
2016-03-24 11:32:53
477
原创 顺序存储结构插入与删除
插入操作插入算法的思路:如果插入位置不合理,抛出异常;如果线性表长度大于等于数组的长度,则抛出异常或动态增加容量;从最后一个元素开始向前遍历到第i个位置,分别将它们都向后移动一个位置;将要插入的元素填入位置i处;表长度加1;返回TRUE。实现代码如下:/*初始条件:顺序线性表L已存在,1<=i<=ListLength(L),*//*操作结果:在L中第i个位置之前插入新的元素e,L的长
2016-03-24 08:32:15
1321
原创 寻找数组中第二大数
如何实现寻找一维数组中第二大数,要求是时间复杂度为O(n)。具体实现代码如下:#include #include #include int find_2nd_max(int *arr,int n){ int max=arr[0]; //定义最大数 int s_max=arr[1]; //定义次大数 if(max<s_max){ ma
2016-03-16 20:46:04
419
原创 JQuery实现一键返回顶部
本文主要实现一键返回顶部的功能,具体返回顶部的图片及样式在js文件中定义。下面是yestop.js中的代码:/*!* YesTop(jQuery GoToTop)* version: 1.1.2* Copyright (c) 2015 HoverTree* http://hovertree.com* http://hovertree.com/texiao/yestop/*/(
2016-03-16 08:39:34
1936
原创 JS正则表达式验证账号、手机号、电话和邮箱
/** 验证账号是否符合合法 验证规则:字母、数字、下划线组成,字母开头,4-16位。 */ function checkUser(str) { var re=/^[a-zA-Z]\w{3,15}$/; if(re.test(str)) { alert("正确!"); }else { alert("错误!"
2016-03-15 15:07:40
7267
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人