Node在实现中并非完全按照CommonJS规范实现,而是对模块规范进行了一定的取舍,同时也增加了少许自身需要的特性。本文将详细介绍NodeJS的模块实现 引入 nodejs是区别于javascript的,在javascript中的顶层对象是window,而在node中的顶层对象是global [注 ...
                            
                            
                                分类:
其他好文   时间:
2018-04-25 22:10:22   
                                阅读次数:
189
                             
                    
                        
                            
                            
                                    Node的包管理器 JavaScript缺少包结构的定义,而CommonJS定义了一系列的规范。而NPM的出现则是为了在CommonJS规范的基础上,实现解决包的安装卸载,依赖管理,版本管理等问题。 CommonJS是一个致力于构建统一的JS生态系统,它可以兼容web服务器、桌面应用、命令行应用、浏 ...
                            
                            
                                分类:
其他好文   时间:
2018-04-04 12:51:54   
                                阅读次数:
444
                             
                    
                        
                            
                            
                                    JavaScript模块化规范主要遵循CommonJS和AMD规范。 CommonJS规范-服务器端JavaScript规范 Node.js是一个服务器端JavaScript项目,采用了CommonJS标准实现其模块系统。 CommonJS中采用一个全局require方法来加载模块,主要由原生模块m ...
                            
                            
                                分类:
编程语言   时间:
2018-03-30 17:20:57   
                                阅读次数:
124
                             
                    
                        
                            
                            
                                CommonJS是服务器端模块的规范,由Node推广使用。由于服务端编程的复杂性,如果没有模块很难与操作系统及其他应用程序互动。使用方法如下: 根据CommonJS规范: 一个单独的文件就是一个模块。每一个模块都是一个单独的作用域,也就是说,在该模块内部定义的变量,无法被其他模块读取,除非定义为gl ...
                            
                            
                                分类:
Web程序   时间:
2018-03-19 13:45:42   
                                阅读次数:
255
                             
                    
                        
                            
                            
                                一、CommonJSNode.js是commonJS规范的主要实践者,它有四个重要的环境变量为模块化的实现提供支持:module、exports、require、global。实际使用时,用module.exports定义当前模块对外输出的接口(不推荐直接用exports),用require加载模块。//定义模块math.jsvarbasicNum=0;functionadd(a,b){retur
                            
                            
                                分类:
Web程序   时间:
2018-03-16 17:16:36   
                                阅读次数:
185
                             
                    
                        
                            
                            
                                    服务器端 node的module遵循CommonJS规范,浏览器端 requirejs遵循AMD,seajs遵循CMD 在node模块中,采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口。 ES6标准发布后,module成为标准,使用import引入 ...
                            
                            
                                分类:
其他好文   时间:
2018-03-12 21:13:49   
                                阅读次数:
454
                             
                    
                        
                            
                            
                                    AMD(异步模块定义)是RequireJS在推广过程中对模块定义的规范化产出。 CMD(同步模块定义)是SeaJS在推广过程中对模块定义的规范化产出。 CommonJS规范-module.exports (node服务端使用CommonJS规范) ES6新特性 export/import ...
                            
                            
                                分类:
Web程序   时间:
2018-02-25 17:16:06   
                                阅读次数:
223
                             
                    
                        
                            
                            
                                    我们都知道,webpack的特点之一就在于其的模块化,将各个文件都使用loader功能转换为js文件,并将其模块化,那么其模块化的原理是什么呢? 首先我们需要了解CommonJS规范,以及AMD、CMD、UMD规范都是什么及其原理。 首先,CommonJS是在服务器端用于模块化的规范,因为是同步的, ...
                            
                            
                                分类:
其他好文   时间:
2018-01-28 17:22:38   
                                阅读次数:
698
                             
                    
                        
                            
                            
                                    最近在学习使用Webpack3的时候发现,它已经可以在不使用babel的情况下使用ES6的模块加载功能了。 说到ES6的模块加载功能,我们先复习一下CommonJS规范吧: 一 . CommonJS规范规定,在每个模块内的module变量代表当前模块。这个变量的module.exports属性是对外 ...
                            
                            
                                分类:
其他好文   时间:
2018-01-17 15:48:52   
                                阅读次数:
756
                             
                    
                        
                            
                            
                                    一、前言 ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口。 不把require和import整清楚,会在未来 ...
                            
                            
                                分类:
其他好文   时间:
2018-01-11 17:30:21   
                                阅读次数:
100