当前位置: 首页 > news >正文

大寺网站建设公司网站建设销售ppt模板

大寺网站建设公司,网站建设销售ppt模板,劳务派遣和外包一样吗,网站应用程序池世上本无nodejs js最初是在前端浏览器上运行的语言#xff0c;js代码一旦脱离了浏览器环境#xff0c;就无法被运行。直到nodejs的出现#xff0c;我们在电脑上配置了node环境#xff0c;就可以让js代码脱离浏览器#xff0c;在node环境中运行。 浏览器不支持模块化 nodej… 世上本无nodejs js最初是在前端浏览器上运行的语言js代码一旦脱离了浏览器环境就无法被运行。直到nodejs的出现我们在电脑上配置了node环境就可以让js代码脱离浏览器在node环境中运行。 浏览器不支持模块化 nodejs nodejs可其他后端语言一样支持模块化享受了模块化的优点。 浏览器环境 可是浏览器并不支持nodejs的模块化语法 代码 //index.html !DOCTYPE html html langen headmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlescript src./module1.js/script /head bodydiv idbtn我是一个标题/div /body /html //module1.js const module2require(./module2) console.log(module2,module2) //module2.js const a1 console.log(module2,a) module.exports.aa  目录结构 效果 Uncaught ReferenceError: require is not defined [Five Server] connecting... [Five Server] connected. webpack使用 webpack.config.js配置 //webpack.config.js const pathrequire(path) module.exports{mode:development,entry:./module1.js,output:{path:path.join(__dirname,dist),filename:bundle.js} } 运行结果 webpack打包代码 例一commonJs 模块代码 //module1.js const module2require(./module2) console.log(module2,module2)   打包代码bundle.js //打包代码稍作修正一功能不改变 (() {var __webpack_modules__ ({./module1.js:(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {eval(const module2__webpack_require__(./module2.js);console.log(module2,module2.a));},./module2.js:(module) {eval(const a1;console.log(module2,a);module.exports.aa);}});var __webpack_module_cache__ {};function __webpack_require__(moduleId) {var cachedModule __webpack_module_cache__[moduleId];if (cachedModule ! undefined) {return cachedModule.exports;}var module __webpack_module_cache__[moduleId] {exports: {}};__webpack_modules__[moduleId](module, module.exports, __webpack_require__);return module.exports;}var __webpack_exports__ __webpack_require__(./module1.js);})(); //打包代码稍作修正二功能不改变 (function(){var cache {};function require(modulePath) {// var cachedModule cache[moduleId];// if (cachedModule ! undefined) {// return cachedModule.exports;// }// var module cache[moduleId] {// exports: {}// };module{exports:{}}modules[modulePath](module, module.exports, require);return module.exports;}var modules{[./module1.js](module, exports, require){eval(const module2require(./module2.js);console.log(module2,module2.a));},[./module2.js](module){eval(const a1;console.log(module2,a);module.exports.aa);}}var exports require(./module1.js);})(); 打包代码分析 ①webpack实现了自己的require函数 ②webpack采用了立即执行函数 ③webpac把各个模块的代码放到modules中 ④各模块代码字符串形式存储使用eval()函数执行 例二commonJsES6 模块代码 //module1.js const module2require(./module2) console.log(module1,module2.a) //module2.js const module3require(./utils/modules3) console.log(module2,module3.a) module.exports.amodule3.a //module3.js export const a1 console.log(module3,a) 打包代码  //打包代码稍作修正功能不改变 (() { var modules ({./module1.js:((module, exports, require) {eval(const module2require(./module2.js);console.log(module1,module2.a));}),./module2.js:((module, exports, require) {eval(const module3require(./utils/modules3.js);console.log(module2,module3.a);module.exports.amodule3.a);}),./utils/modules3.js:((module, exports, require) {use strict;eval(require.r(exports);require.d(exports, {a:() (a)});const a1;console.log(module3,a));})});var _cache {};function require(moduleId) { var cachedModule _cache[moduleId];if (cachedModule ! undefined) {return cachedModule.exports;}var module _cache[moduleId] { exports: {}};modules[moduleId](module, module.exports, require);return module.exports;}(() {require.d (exports, definition) {for(var key in definition) {if(require.o(definition, key) !require.o(exports, key)) {Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });}}};})();(() {require.o (obj, prop) (Object.prototype.hasOwnProperty.call(obj, prop))})();(() { require.r (exports) {if(typeof Symbol ! undefined Symbol.toStringTag) {Object.defineProperty(exports, Symbol.toStringTag, { value: Module });}Object.defineProperty(exports, __esModule, { value: true });console.log(exports)// debugger};})();var exports require(./module1.js); })() ; 打包代码分析 较例一require函数对象上添加了d、r、o三个函数它们的功能分析。 解开debugger的注释控制台打印出 Module {__esModule: true, Symbol(Symbol.toStringTag): Module}__esModule: trueSymbol(Symbol.toStringTag): Module[[Prototype]]: Object 分析r函数功能 r函数向exports对象添加__esModule、Symbol(Symbol.toStringTag)两个属性来标注采用了ES6模块化 注释debugger控制台打印出 分析d。r函数功能 d。r函数向exports对象添加a属性 例三ES6 模块代码 //module1.js import {a} from ./module2 console.log(module1,a) export const a1 console.log(module2,a) 打包代码 (() {use strict;var modules ({./module1.js:((module, exports, require) {eval(require.r(exports);var _module2__WEBPACK_IMPORTED_MODULE_0__ require(./module2.js);console.log(module1,_module2__WEBPACK_IMPORTED_MODULE_0__.a));}),./module2.js:((module, exports, require) {eval(require.r(exports);require.d(exports, {a: () (a)});const a1;console.log(module2,a));})});var cache {};function require(moduleId) {var cachedModule cache[moduleId];if (cachedModule ! undefined) {return cachedModule.exports;}var module cache[moduleId] {exports: {}};modules[moduleId](module, module.exports, require);return module.exports;}(() {require.d (exports, definition) {for (var key in definition) {if (require.o(definition, key) !require.o(exports, key)) {Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });}}};})();(() {require.o (obj, prop) (Object.prototype.hasOwnProperty.call(obj, prop))})();(() {require.r (exports) {if (typeof Symbol ! undefined Symbol.toStringTag) {Object.defineProperty(exports, Symbol.toStringTag, { value: Module });}Object.defineProperty(exports, __esModule, { value: true });};})();var exports require(./module1.js);})(); 代码分析 和上面的打包结果差不多。
http://www.dnsts.com.cn/news/16979.html

相关文章:

  • 三水营销网站开发wordpress 用户授权
  • 广州一流高校建设网站哪里网站备案快
  • 品牌手机网站开发专业放心的企业展厅设计
  • wordpress去除wordpress新闻西安seo管理
  • 自建公司网站前端开发需要的软件
  • 宝山青岛网站建设关于营销的最新的新闻
  • 莱芜哪里做网站桂林旅游网页设计
  • 专业网站开发哪家好南昌做网站建设哪家好
  • 微博网站开发平台wordpress 多人编辑
  • 建设淘宝客网站多少钱win10 wordpress安装教程视频
  • 资深的网站推广云服务平台
  • 广州网站建设联系信科海珠免费的网络推广
  • 重庆拓达建设集团网站南宁模板建站定制网站
  • 江阴建设局网站招考红桥天津网站建设
  • 深圳网站建设的我的家乡网页制作步骤
  • 鞍山网站建设联系方式宁夏建网站报价
  • ps制作网站北京网站建设 博客
  • 河北建设厅网站福田网站建设有限公司
  • 网站主办单位变更花西子网络营销策划方案
  • 大连网站推广机构网站 三合一
  • 吉林手机版建站系统价格闲鱼钓鱼链接
  • 北京网站开发企业住房城乡建设网站官网入口
  • 品牌网站设计步骤网络营销中的seo与sem
  • 天津医疗行业网站建设网站权重如何做
  • 网站设计主要内容做茶叶网站
  • 江西营销网站建设深圳招聘信息最新招聘信息查询
  • 公司网站怎么设计delphi xe10网站开发
  • 网站支付怎么做安全吗小程序开发哪家好又便宜
  • 家教网站制作韦博在上面做课件的网站叫什么
  • 温州做网站最好的网站流量 名词