伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

爬虫工程师也应该会的 NodeJS 知识(一)

来源:本站原创 浏览:150次 时间:2022-02-26
NodeJS 是什么?

Node.js 是基于 “ Chrome V8 引擎 ” 的 JavaScript 运行环境

V8 引擎是一款专门解释和执行 JS 代码的虚拟机,任何程序只要集成了 V8 引擎都可以执行 JS

NodeJS 不是一门编程语言,NodeJS 是一个运行环境 ,由于这个运行环境集成了 V8 引擎,所以在这个运行环境下可以运行我们编写的JS代码。

这个运行环境最大的特点就是提供了操作 " 操作系统底层的API " ,通过这些底层 API 我们可以编写出网页中无法实现的功能 ( 诸如: 打包工具, 网站服务器等 )

Node 环境搭建搭建方式一

  1. 官网下载.msi安装包: https://nodejs.org/zh-cn/

  2. 全程下一步

  3. 在命令行工具中输入 node -v

搭建方式二

  1. 官网下载.zip安装包: https://nodejs.org/zh-cn/ 

  2. 解压下载好的安装包

  3.  在"高级系统设置"中手动配置环境变量 4.在命令行工具中输入 node -v

搭建方式三

  1. 下载NVM: https://github.com/coreybutler/nvm-windows 

  2. 在 D 盘创建 dev 目录 

  3. 在 Dev 目录中创建两个子目录 nvm 和 nodejs , 并且把 nvm 包解压进去 nvm 目录中 

  4. 在 install.cmd 文件上面右键选择【以管理员身份运行】 - 在终端中直接按下回车 - 将弹出的文件另存为到 NVM 目录 

  5. 打开 settings.txt 文件点击修改

root: D:\Developer\Dev\NVM
path: D:\Developer\Dev\Node

    6. 配置环境变量

NVM_HOME: D:\xxx\Dev\NVM
NVM_SYMLINK: D:\xxx\Dev\Node
在Path中添加 %NVM_HOME% %NVM_SYMLINK%

    7. 在命令行工具中输入 nvm version

NVM常用命令
  • nvm list 查看当前安装的 Node.js 所有版本
  • nvm install 版本号 安装指定版本的 Node.js
  • nvm uninstall 版本号 卸载指定版本的 Node.js
  • nvm use 版本号 选择指定版本的 Node.js
Node 环境和浏览器环境的区别

NodeJS环境和浏览器环境一样都是一个JS的运行环境, 都可以执行JS代码. 但是由����ţë,������ָ��于宿主不同所以特点也有所不同

1. 内置对象不同

  • 浏览器环境中提供了 window 全局对象
  • NodeJS 环境中的全局对象不叫 window , 叫 global

2. this 默认指向不同

  • 浏览器环境中全局this默认指向 window
  • NodeJS 环境中全局this默认指向空对象 {}

3. API 不同

  • 浏览器环境中提供了操作节点的 DOM 相关 API 和操作浏览器的 BOM 相关 API
  • NodeJS 环境中没有 HTML 节点也没有浏览器, 所以 NodeJS 环境中没有 DOM / BOM
Node 全局对象的属性与模块导出\入数据Node 全局对象的属性

和浏览器一样 Node 环境中的全局对象也提供了很多方法属性供我们使用 中文文档地址: http://nodejs.cn/api/

__dirname: 当前文件所在文件夹的绝对路径
__filename: 当前文件的绝对路径
setInterval / clearInterval : 和浏览器中window对象上的定时器一样
setTimeout /  clearTimeout : 和浏览器中window对象上的定时器一样
console :  和浏览器中window对象上的打印函数一样
Node 中的模块导出数据

在 NodeJS 中想要导出模块中的变量函数有三种方式

这个在我们 JS 逆向的时候经常使用到,只要将加密的 JS 补全并将返回的变量导出出来就可以在其他的 JS 中 require 模块后直接使用了。

通过exports.xxx = xxx导出
通过module.exports.xxx = xxx导出
通过global.xxx = xxx导出

注意:不管使用那种方法导出,在使用的时候需要 require 模块后才能使用,通过global.xxx 方式导出不符合 CommonJS 规范, 不推荐使用

Node 中的模块导入的注意事项

1、require 导入模块时可以不添加导入模块的类型

如果没有指定导入模块的类型, 那么会依次查找.js .json .node文件无论是三种类型中的哪一种, 导入之后都会转换成 JS 对象返回给我们

2、导入自定义模块时必须指定路径

require 可以导入自定义模块(文件模块)系统模块(核心模块)第三方模块

  • 导入自定义模块模块时前面必须加上路径(这就是为什么很多新手导入自己写的模块时出错的原因)
  • 导入系统模块第三方模块是不用添加路径

3、导入系统模块第三方模块是不用添加路径的原因

  • 如果是系统模块直接到环境变量配置的路径中查找
  • 如果是第三方模块会按照 module.paths 数组中的路径依次查找


Love & Share 

[ 完 ]


  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net