关闭

Mongoose中间件入门示例

Mongoose的中间件功能很强大,可以把复杂的异步程序,诸如各种数据验证的方法,拆分后按照同步顺序执行,这里就举一个简单的中间件用法\\前面的代码都是范式,在基础入门已经提过了 var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:28001/test'); var db = mongoose.conne...
阅读(49) 评论(0)

mongoose的基础用法

下面是根据官网文档quick start的范例敲了一遍代码,然后附加一些解释//首先npm下载mongoose并且保证mongodb已经下载,服务器已经运行 //接下来是获取mongoose模块 var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:28001/test'); var db = mongoo...
阅读(67) 评论(0)

socket.io命名空间的详细解析

所谓命名空间,就是指在不同的域当中发消息只能给当前的域的socket收到。 下面来看一个实例。 看下客户端的代码: var chat = io.connect('http://localhost:3000/chat'); var news = io.connect('http://loca...
阅读(29) 评论(0)

用socket.io发私信

在socket.io中发私信其实就是定点对某个特定的socket.id发消息。 下面这个示例有三个一样的客户端, 客户端1发私信给客户端2,客户端2发私信给客户端3, 客户端3发私信给客户端1. 下面是三个客户端的html, 取之于官方范例: Socket.IO chat ...
阅读(29) 评论(0)

Socket.io对于房间的详细解析

最近学习了socket.io房间的用法,现在来梳理一下。 首先我们还是先看下客户端的chat.html,这取自于官方文档的例子: Socket.IO chat * { margin: 0; padding: 0;...
阅读(98) 评论(0)

Express 4.x 使用CORS跨域的详细解析

前两天在stackoverflow里面提问res.jsonp的用法,被回答者嘲讽:现在是2017年了,还用jsonp? 用CORS跨域啊。做为一名傻傻的业余爱好者,不明就里,居然问:是什么技术取代jsonp在CORS跨域里面使用? 估计回答的人已经吐血了,说:CORS就是一门技术。 后来自己去翻关于各方面CORS的技术博客,现在稍微懂了一点,在此做个笔记。 jsonp是属于比较老的技术,HTML5...
阅读(36) 评论(0)

Express4.x中res.format()的用法

res.format的作用是根据request heards所能接受的格式,来响应不同的内容。来看个例子:这是服务端路由程序 router.jsvar express = require('express'); router.get('/', function (req, res) { res.send('this is a router base page!'); });router.ge...
阅读(18) 评论(0)

Express 4.x中间件express-session的详细解析

对这个中间件express-session的一些设置一直是懵懵懂懂,现在稍微懂了一点。 先简单的看下代码吧:这是路由页面代码 cookieRouter.jsvar express = require('express'); var bodyParser = require('body-parser');//引入此中间件解析表单post来的数据 var session = require('ex...
阅读(21) 评论(0)

Express 4.x中间件methodOverride的详细解析

methodOverride用于当服务器端运用put, delete这种方法,而客户端不支持的情况之下,对请求方法进行转换从而能够保持通讯能够成功的办法。假设服务端用的是put方法的话,值得注意的是在form的属性里面需要这么写。action="index1.html?_method=PUT"首先看下客户端html的这个表单提交: <m...
阅读(31) 评论(0)

Express 4.x中间件multer的详细解析

multer这个中间件用来处理客户上传的各种文件并且保存到服务端,非常强大和实用。下面让我们来看看怎么搞。 首先还是去下载下这个中间件,需要提一下的是,我用的是v1.3.0, 老版本的的使用方法会有较大出入,这里就不说了。 npm install multer –save 下面先看客户端的html,上传一个文件玩玩: <meta char...
阅读(50) 评论(0)

Express 4.x中间件morgan(logger)的详细解析

开头先说写无关的话: 看了很多技术博客,最痛恨的就是那种拷贝粘贴党,要么就是那种原文翻译混乱党, 都是属于无脑型。不仅如此,格式也是让人心生绝望。浪费了很多时间。 当然有些人写这些只是给自己记的笔记,自己也不能太过激。 好了,牢骚发过了,现在写正题。 express 4.x相比express 3.x有很大的改进,特别是中间件方面,已经不再兼容,需要自己去下载。 所以只要碰到这种格式的 expr...
阅读(57) 评论(0)

Node.js 写入文件流的缓存问题探讨

客户端学得差不多了,为了打通客户端和服务端的任督二脉, 现在小白在看node.js. 关于写文件流的操作,想知道缓存最多能一次性存入多少字节。 下面是代码:var count = 0; //计数器记录可以写多少个字符。 var flagOut = true; //flag触发后,跳出循环,不再写文件。 var writeable = fs.createWriteStream('./testInpu...
阅读(68) 评论(0)

为什么我们喜欢用 async function

小明是个菜鸟程序员,他写了三个延时1秒执行的函数 fn1, fn2, fn3:var fn1 = function () { setTimeout(function () { console.log('fn1 is executed'); }, 1000); };var fn2 = function () { setTimeout(function () {...
阅读(62) 评论(0)

关于js中对对象原型和构造函数的一些理解

先随意写一个构造函数,然后创建两个它的实例对象。function Box(age) { this.name = 'ss', this.age = age return this.age; }Box.prototype.run = function () { console.log(`${this.name} : I am ${this.age}.`); }var box1 = new...
阅读(128) 评论(0)

ES6语法之函数式编程实现 pipeline

我们的目标是给定一个初始值以后,用pipeline的方法实现不同函数运算的顺序执行,从而得出最终结果。 最终实现应该如下:var result = pipeline(initialValue, func1, func2, func3...); 首先先写几个函数吧:var double = n => n * 2; var pow = n => n * n; var pow3 = n => n * n...
阅读(247) 评论(0)

戏说js的call, apply 和 bind (文章内容可能引起逻辑严谨的程序员的不适,慎入!)

有两个对象,他们的名字叫obj1, 和obj2, 他们很像,但是其实是生活在不同的平行空间中行走,但是彼此不能相见。下面请看看他们长什么样子。var obj1 = { power: 8, inc: function (elem1, elem2) { this.power++; console.log(this.power + elem1 + elem...
阅读(170) 评论(0)

ES6中箭头函数的浅析

先看这个代码:var obj = { name: 'ss', time: function () { return function () { console.log(this.name); } } }; obj.time()();//显然没有结果,this作用域的问题这样就可以运行var obj = { nam...
阅读(116) 评论(0)

ES6 中 let的在for循环中变量作用域问题的探讨

如果你直接这么运行,那么电脑就卡死了,因为死循环了。for (var i = 0; i < 3; i++) { var i = 1; console.log(i); }可是如果你这么写for (let i = 0; i < 3; i++) { let i = 1; console.log(i);结果则是:1 1 1如果你这么写,结果同上for (var i = 0; i < 3;...
阅读(314) 评论(0)

setInterval()和clearInterval()在闭包内的用法

看了大部分博客都是setInterval以后,然后用事件clearInterval. 下面的例子是用闭包中的内部变量来控制定时器。function fn() { var i = 0; var t = setInterval(function () { i++; console.log(i); if (i == 10) {...
阅读(86) 评论(0)

对于javascript MDN 中let 和var范例的认识

这是javascript MDN的范例 目的是为了说明let作用域的问题。var SomeConstructor;{ let privateScope = {}; SomeConstructor = function SomeConstructor () { this.someProperty = "foo"; privateScope.hidden...
阅读(102) 评论(0)
    个人资料
    • 访问:1781次
    • 积分:177
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条