写一点初学Node.js的理解和需要注意事项

2018-11-16  本文已影响0人  锋享前端

最近在看node的教学视频,就跟着总结一点node的入门概念和一点注意事项,希望能帮到小白。

首先看看什么是 Node.js?

在官方里的概念:Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
(完全看不懂~~~好吧有中文的大家自己找找)
Node.js 可以解析JS代码(没有浏览器安全级别的限制)提供很多系统级别的(底层)API,如:

准备 Node.js

使用nvm(Node Version Manager)来安装并维护多个Node.js的版本
1、项目地址:
https://github.com/creationix/nvm/blob/master/README.md
windows安装:http://blog.csdn.net/tyro_java/article/details/51232458
2、配置加速镜像:
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node

命令行中的体验

1、在node命令行中可以运行代码吗?no,输入命令行输入node打开Node.js执行环境后可以运行代码;想退出Node.js运行环境按两次ctrl+c;如果想运行js文件要在命令行里打:node 文件路径;

2、在node命令行里调用 window, process 两个对象?no,后台这是操作文档,操作字符串了

3、安装nodemon, 实时侦测文件的变化,安装:cnpm install -g nodemon;运行:nodemon 文件路径

4、安装全局就是:可以在任何目录下都可以用它,不是全局只能在当然录下用;
有时候为什么安装到全局了;本地还要安装呢?安装全局保证任何目录下都可以运行可以用包的命令,本地安装为了包在本地可能会引用require包的一些方法;

模块/包与CommonJS

模块包与CommonJS.png
CommonJS规范:

定义:就是定义一个js文件那就是模块了;
暴露接口:就是module.exports.xxx = 模块里面的某个接口;
引用:就是require;

模块分为:

模块包.png

NPM-包管理工具

Node.js 常用模块介绍

一、Nodejs内置模块:
特点:不需要安装,直接使用;

http

写个例子:简单的开启了一个端口号为7777的服务器;

const http = require('http');
var server = http.createServer((request,response)=>{
    response.write('china')
    response.end()
})
server.listen(7777, ()=>{
    console.log('开启了端口7777')
})

当我命令nodemon 文件路径;就可以启动服务;

URL

url.parse(urlString[, parseQueryString[, slashesDenoteHost]])
url.format(urlObject)
url.resolve(from, to)

Query String

querystring.escape(str)
querystring.parse(str[, sep[, eq[, options]]])
querystring.stringify(obj[, sep[, eq[, options]]])
querystring.unescape(str)

二、第三方模块:

gulp
sass
......
小例子:
request:作用请求接口返回数据;
安装:cnpm install request;自动建立一个node_module文件夹下载依赖包;

// request
var request = require('request');
request('https://baidu.com/', function (error, response, body) {
  console.log(JSON.parse(body)); 
});

当我命令nodemon 文件路径;就可以获取数据了;

三、自定义模块:分三步
1、定义:就是定义一个js文件那就是模块了;
2、暴露接口:就是module.exports.xxx = 模块里面的某个接口;

注意:
在CommonJS规范里,exports = module.exports
暴露的时候有两种写法:

image.png

更加注意的是还有一种错误的写法:

image.png

3、引用:就是require;

image.png

最后说一下模块访问引用的时候注意层次关系;内层文件夹可以引用外层第三方模块;外层不能引用内层第三方模块;好了前期注意点就总结到这里,

上一篇 下一篇

猜你喜欢

热点阅读