var fs = require("fs"); var path = require("path"); function propStringToMap(ss1) { var propsMap = {}; var propsLength = 0; var firstProp = null; var xa = ss1.split(/["'][\s]+/); for (var j = 0; j < xa.length; j++) { var xaj =…
前言 当客户端向http server 发起TCP链接时,server端会发起一系列的callback调用,这是一个逆向调用的过程:开始于libuv,终止于js代码里的callback(promise then)函数. 如下图所示,http server 正向调用过程,实际大部分的时间花在net.js上,直到最下面的红框,才调用了关键函数createTCP() function createTCP() { //绑定tcp_wrap模块,调用tcp constructor. var TCP = p…
基本用法: ES6中允许使用“箭头”(=>)定义函数 var f = v => v; 上面代码相当于定义了一个函数 f : var f = function(v){ return v; } 1.无参数的箭头函数: var f = ()=>5; 等同于 var function(){ return 5; } 2.有参数的箭头函数: var sum = (a,b)=>a+b; 等同于 var sum=function(a,b){ return a+b; } 有的函数体内的语句大于一条的…
一:代码: 1.1 入口文件: index.js var server = require('./server'); var router = require("./router"); var requestHandlers = require("./requestHandlers"); var handle = {}; handle["/"] = requestHandlers.start; handle["/start"]…
阻塞代码实例: main.js var fs=require("fs"); var data=fs.readFileSync("1.txt"); console.log(data.toString()); console.log("程序执行结束"); 非阻塞代码实例: main.js var fs=require("fs"); fs.readFile("1.txt",function(err,data){…