in common的用法法区别有哪些

  mon意思:mon用法:在句中常用作定语,也可用作表语,其后可接介词to。修饰不可数名词时,前面不能加不定冠词。
  风车是荷兰常见的景色。
  2.general用法:基本含义是“普遍的,全面的; 总的,整体的”,引申可表示“非专门的,一般的”“正常的,常规的; 通常的”“大致的,笼统的”。在句中可用作定语、表语或宾语补答足语。
  她的预测很全面,放之四海而皆准。

}

Javascript先天就缺乏一项功能:模块,而CommonJS规范的出现则弥补了这一缺陷。CommonJS规范的出现,前后端的Javascript才得以实现大一统。Node借鉴了CommonJS的Modules规范实现了一套非常易用的模块系统。

CommonJS的模块规范分为3个部分:

3).模块标识:实际上就是传递给require()的参数,如上述的'math',它必须是符合camel命名法的字符串,或者是以“.”“..”开头的相对路径或绝对路径,它可以没有文件名后缀“.js”

在Node中,模块分为两类:一类是Node本身提供的核心模块,另一类是用户自己编写的文件模块。核心模块有一部分在Node源代码的编译过程中,编译成了二进制文件,在Node启动时核心模块就被直接加载进内存中,所以它的加载速度是最快的。文件模块则是在运行时动态加载,需要经历三个步骤:路径分析,文件定位,编译执行。注意,Node对引入过的模块都会进行缓存,以减少二次引入时的开销,并对相同模块的二次加载都采用最优先从缓存加载的策略。

路径分析主要分析上述提到的模块标识符,主要分为以下几类:

2)、.或..开始的相对路径文件模块
3)、以/开始的绝对路径文件模块
4)、自定义文件模块,可能是一个文件或包的形式。Node会根据模块路径数组module.paths来逐个尝试查找目标文件,通常是沿着当前目录逐级向上直到根目录查找名为node_modules的目录,所以这是查找最费时的一种方式。

在路径分析的基础上,文件定位需要注意如下细节:

1)、文件扩展名分析:由于CommonJS规范允许模块标识不填写扩展名,Node会按.js、.json、.node的次序不足扩展名,依次尝试
2)、目录分析和包:若通过上述文件扩展名分析后没有查找到对应文件,却得到一个目录,Node会把目录当做一个包来处理

定位到具体文件后,Node会新建一个模块对象,根据路径载入并编译。对于不同的扩展名,载入方法有所不同:

1)、.js文件:通过fs模块同步读取文件并编译执行
2)、.node文件:这是用C/C++编写的扩展文件,通过dlopen()方法加载
3)、.json文件:通过fs模块同步读取文件,用JSON.parse()解析返回结果
4)、其余扩展名文件:都被当做.js文件载入

我们知道每个模块文件中默认都存在着require、exports、module这3个变量,甚至在Node的API文档中,我们知道每个模块还有filename、dirname这2个变量的存在,它们是从何而来的呢?Node的模块又是怎么做到声明的“全局变量”实际上是不会污染到其他模块的?事实上,Node在编译JS模块过程中会对文件内容进行头尾包装。下面是一个JS文件经过头尾包装的例子:

/* 中间是JS文件的实际内容 */ /* JS文件的实际内容结束 */

这样每个模块文件之间都进行了作用域隔离,同时require、exports、module等变量也被注入到了模块的上下文当中。这就是Node对CommonJS模块规范的实现。关于C/C++模块及Node核心模块的编译过程较为复杂,不再赘述。

有必要明确一下Node中各种模块的调用关系,如下图所示:

C/C++内建模块是最底层的模块,属于核心模块,主要提供API给Javascript核心模块和第三方Javascript文件模块调用,实际中几乎不会接触到此类模块。Javascript核心模块主要职责有两种:一种是作为C/C++内建模块的封装层和桥接层供文件模块调用,另一种是纯粹的功能模块,不需要跟底层打交道。文件模块通常由第三方编写,包括普通Javascript模块和C/C++扩展模块。

包本质上是一个存档文件(一般为.zip或.tar.gz),安装后解压还原为目录。CommonJS的包规范由包结构和包描述文件两部分组成。一个完全符合CommonJS规范的包结构应包含以下文件:

包描述文件是一个JSON文件——package.json,位于包的根目录下,是包的重要组成部分,用于描述包的概况信息。后面要提到的NPM的所有行为都与这个文件的字段息息相关。下面将以知名Web框架express项目的package.json文件为例说明一些常用字段的含义。

NPM(node package manager),通常称为node包管理器。它的主要功能就是管理node包,包括:安装、卸载、更新、查看、搜索、发布等。

Node包的安装分两种:本地安装、全局安装。两者的区别如下:

下面以grunt-cli(grunt命令行工具)为例,列出常用的包管理命令:

以上就是Node.js中CommonJS模块规范用法总结的详细内容,更多请关注Gxl网其它相关文章!

}

adj. 常见的;通常的;普遍的;共有的;共享的;共同的;普通的;平常的;寻常的;平凡的

n. 公共用地;公地;(学校、大学等的)学生公共食堂

他的名字叫汉森,在挪威是一个常见的名字。

摩尔达维亚人和罗马尼亚人使用同一种语言。

民主也许能提升普通人的政治地位,让他们产生优越感。

给更有需要的人让座是最起码的礼貌。

大家都知道游泳是的锻炼方式之一。

在寒冷的国家,雪是常见的。

缩略词在口语里比在书写中常见得多。

2016年高考英语浙江卷(6月) 阅读理解 阅读C 原文

2015年高考英语福建卷 阅读理解 阅读E 原文

2020年考研真题(英语二)完形填空 Section Ⅰ

2020年考研真题(英语二)阅读理解 Section Ⅱ

}

我要回帖

更多关于 in common的用法 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信