node基础

什么是node?

node.js是 一种依靠 谷歌浏览器内核中的v8引擎驱动的可以方便的构建快速、可扩展的网络应用程序的平台。核心语言是JavaScript,前段人员方便上手使用。

为什么要使用node.js?

它使用事件驱动,非阻塞i/o模型,轻量,高效,商业用途强。

node有什么缺点?

最不擅长 CPU和内存的编程操作。

计算性能不如C

内存控制不如Java(JavaScript的面向对象是基于JSON的,而Java直接使用内存结构)

大内存的应用(由于v8引擎有内存设计的限制。32位环境最大堆1G,64位环境最大堆不到2G)

不需要异步的应用(比如系统管理,自行化脚本等)

node如何配置?

安装包直接安装

判断安装包是否成功:在谷歌控制台界面直接输入node。

node -v 版本号

也可配置环境变量,然后在cmd 中输入node 可直接进入

cmd中找到文件位置的方法

1.找到文件目录 (node 文件名.js)

2.使用绝对路径(node 文件绝对路径)

3.打开文件夹,按住shift键,鼠标在空白处右键 选择在此处打开命令窗口

注意:

在node中没有window对象,因为是直接用v8引擎解析。

node.js 语法。

1.断言

console.time()

用于测试

比如计算一段循环所用的时间:

console.time('test');
for(var i = 0; i < 10000000; i++){}
console.time('test');

2.显示文件路径

console.log(__dirname)   显示当前文件所在的路径

console.log(__filename)   显示当前文件的全部路径

3.模块化

模块化:把代码拆分成模块,方便管理和维护

var 名字 = require("js文件地址")

还可以导入自己定义的函数等

注意:服务端在文件地址前需要加上./    表示当前目录

4.fs文件系统模块

var  fs = require("fs");

然后就可以使用node中内置的模块(包)。

5.常用内置模块

fs    文件系统

http   创建服务

path   路径

querystring  参数模块

url     地址栏

还有自定义模块

可到node文档中查看更多和更详细的方法使用

下面详细给出get 和 post 方式的简单服务器

var http = require("http");
var fs = require("fs");
var querystring = require("querystring");
var url = require("url");

var server = http.createServer();

server.on("request",function(req,res){
    // console.log(req.url);   //路由
    var urlObj = url.parse(req.url,true);   //把地址栏格式化成对象

    var pathname = urlObj.pathname;

    var query = urlObj.query;        //获取到url地址栏的参数

    if(pathname == "/login" && req.method == "POST"){         //post方法
        var data = "";
        req.on("data",function(chunk){
            data += chunk;
        })
        req.on("end",function(){
            var  dataObj  = querystring.parse(data);
        res.end(dataObj);
        })
    }
    else if(pathname == "/getData" && req.method == "GET"){        //get方法
        fs.readFile("./data/" + query.uname+".json","utf8",function(err,data){
             res.end(data);
        })
    }
})

server.listen(3001);        
原文地址:https://www.cnblogs.com/ddjps/p/10476618.html