阅读 117

Node.js基础(一)

一、常用函数介绍

1,文件操作的函数

// 包含文件名称的全路径
console.log(__filename);
//不包含文件名的全路径
console.log(__dirname);

结果:

2,进程的函数

process.argv 返回一个数组,默认情况下第一个是安装node.js环境的全路径,第二个是当前执行的js的全路径,从第三个参数开始是从命令行输入的参数

三、模块化

1,与模块化相关函数:exports require() module

2,传统非模块化开发有如下缺点:

  • 命名冲突
  • 文件依赖

3,前端标准的模块化规范:

  • AMD - require.js
  • CMD - sea.js

4,服务端的模块化规范

  • CommonJS - Node.js 
    • 与前端模块化规范相比,服务端模块化规范不同之处主要在文件加载方面
    • 对前端来说加载js文件要从服务器经过网络传输到浏览器中,代码才能执行;对服务端来说,文件本来就在服务器中,文件加载是从磁盘加载到内存就可以了
    • 服务器端模块化的加载是同步的,前端的文件加载是异步的,要保证页面渲染的效率
    • 在模块的定义、成员的导入导出是比较相似的

5,模块化相关的规则

  • 如何定义模块:一个js文件就是一个模块,模块内部的成员都是相互独立的‘
  • 模块成员的导出和引入

导出示例:02.js文件

var sum = function(a, b){
  return parseInt(a) + parseInt(b);
}

// 导出模块成员

// 方法一
exports.sum = sum;

//方法二
var ret = module(1, 2);

导入示例: 01.js

//引入模块

//方法一
var module = require(‘./02.js‘);

var ret = module.sum(1, 2);
console.log(ret);

//方法二
var ret = module(1, 2);

注意:

  • 已经加载的模块会被缓存,主要是用来提高性能,虽然02.js被引入了两次,但用的是第一个加载的模块
  • 模块文件的后缀:.js、.json、.node ,引入的时候可以去掉后缀;
  • 引入的时候如果不加文件后缀时,且三类文件名一样,那么加载优先级:.js -> .json -> .node
//引入模块
var module = require(‘./02.js‘);
var module = require(‘./02.js‘);

var ret = module.sum(1, 2);
console.log(ret);

 

原文:https://www.cnblogs.com/ella-li/p/14793571.html

文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐