關於require()和export引入依賴的區別

2022-09-16 20:00:20 字數 1053 閱讀 1352

require 和 import,都是為了js模組化使用。最近專案中,因為多人協同開發,出現了乙個專案中同時使用了require 和 import 引入依賴的情況。正常情況下,乙個專案中最好是對引入方式做乙個規範。下面我們就來看一下require 和 import的區別:

一.require

require是commonjs的規範,node應用是由模組組成的,遵從commonjs的規範。用法:

//

a.js

function

test (args)

module.exports =;

let = require('./a.js');

test('this is a test.');

require的核心概念:在匯出的檔案中定義module.exports,匯出的物件型別不予限定(可為任意型別)。在匯入的檔案中使用require()引入即可使用。本質上,是將要匯出的物件,賦值給module這個物件的exports屬性,在其他檔案中通過require這個方法來訪問exports這個屬性。上面b.js中,require(./a.js) = exports 這個物件,然後使用es6取值方式從exports物件中取出test的值。

二.import

import是es6為js模組化提出的新的語法,import (匯入)要與export(匯出)結合使用。用法:

//

a.js:

export

function

test (args)

//預設匯出模組,乙個檔案中只能定義乙個

export default

function

() ;

export const name = "lyn";

://_代表引入的export default的內容

import _, from './a.js';

test(`my name is $`);

三、commonjs模組與es6模組的區別

1.commonjs輸出的,是乙個值的拷貝,而es6輸出的是值的引用;

expor和import的用法

1.export 模組是獨立的檔案,該檔案內部的所有的變數外部都無法獲取。如果希望獲取某個變數,必須通過export輸出 profile.js export var firstname michael export var lastname jackson export var year 1958 ...

require和require once的區別

include 和require 語句包括並執行指定檔案。include 產生乙個警告而 require 則導致乙個致命錯誤。換句話說,如果你想在遇到丟失檔案時停止處理頁面就用 require include 就不是這樣,指令碼會繼續執行。require once 為了避免重複載入檔案。意為 載入檔...

require和require once的區別

require 的使用方法如 require inc.php 通常放在 php 程式的最前面,php 程式在執行前,就會先讀入 require 所指定引入的檔案,使它變成 php 程式網頁的一部份。include 使用方法如 include inc php 一般是放在流程控制的處理區段中。php 程...