require,java
<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>
java require是什麼?讓我們一起來了解一下吧!
Java require是CommonJS格式的核心,模塊通過它來加載。Node.js 的模塊倉庫 npmjs.com ,現在已經存放了15萬個模塊,其中絕大部分都是 CommonJS 格式。
模塊的加載順序例子:require('find')
1、node會先查找find模塊是否是內置模塊(nodejs內置的模塊有fs、http等),找不到則進行下一步
2、從當前目錄向外尋找node_moludes查找是否有find.js文件,找不到進行下一步;
3、在node_moludes中找find文件夾,尋找index.js文件;
4、沒有index.js文件,則去package.json中查找main字段,該字段對應於一個入口路徑;
5、以上都找不到,報錯。
加載文件例子:require('./find')
1、node會先找當前目錄下的find.js文件;
2、進而尋找find.json文件;
3、尋找當前目錄下的find文件夾的index.js
4、沒有index.js文件,則去package.json中查找main字段,該字段對應於一個入口路徑;
5、以上都找不到,報錯。
Require的用法:
當 Node 遇到 require(X) 時,按下面的順序處理。
1.如果 X 是內置模塊(比如 require('http'))
a. 返回該模塊。
b. 不再繼續執行。
2.如果 X 以 "./" 或者 "/" 或者 "../" 開頭
a. 根據 X 所在的父模塊,確定 X 的絕對路徑。
b. 將 X 當成文件,依次查找下面文件,只要其中有一個存在,就返回該文件,不再繼續執行。
XX.jsX.jsonX.node
c. 將 X 當成目錄,依次查找下面文件,只要其中有一個存在,就返回該文件,不再繼續執行。
X/package.json(main字段)X/index.jsX/index.jsonX/index.node
3.如果 X 不帶路徑
a. 根據 X 所在的父模塊,確定 X 可能的安裝目錄。
b. 依次在每個目錄中,將 X 當成文件名或目錄名加載。
4. 拋出 "not found"