前言
PS:在这里小编分析Node模块系统源码的时候,使用的Node版本是:6.17.1;
- 主要目的是低版本的Node源码很适合初学者研究并且学习,Node版本太高,有的技术点就会发生变化,不利于初学者研究~
一、知识点补充
小编在给大家分析Node源码之前,必须先补充几个有关Node源码的知识点:
1.Node模块原理分析:要想使用模块必须先通过require()方法导入模块,所以可以推断出require()方法的作用其实就是读取文件,所以要想了解Node是如何实现模块的,必须先了解如何执行读取到的代码;
2.执行从文件中读取的代码:我们都知道通过fs模块可以读取文件,但是读取的数据要么是二进制,要么是字符串,无论是二进制还是字符串都无法直接执行;但是我们知道如果是字符串,在JS中还是有办法让它执行的,使用 eval 或者 new Function,使用方法如下:
使用eval()方法执行字符串:
let str = &#