require import 引入區別


1、require引入

//require.js
let a = 0; const count = () => { ++a; console.log(a,'==require模塊內部函數執行==') } setTimeout(function(){ ++a; console.log(a,'==require模塊內部定時器執行=='); }, 500); module.exports = { a, count, };

引入:

let foo = require('./js/require'); foo.count(); setTimeout(function(){ console.log(foo.a,'==require導入文件=='); }, 1000);

效果:

 

 結論: require引用值是深拷貝,值的拷貝

 

2、es6 import

// es6文件
let b = 0; const countb = () => { ++b; console.log(b,'==es6模塊內部函數執行==') } setTimeout(function(){ ++b; console.log(b,'==es6模塊內部定時器執行=='); }, 500); export { b, countb, };

引入:

import { b, countb } from './js/es6'; countb(); setTimeout(function(){ console.log(b,'==es6導入文件=='); }, 1500);

效果:

 

 結論:es6的import引入是淺拷貝,還有引用關系


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM