美文网首页nodeJS
熟悉nodeJs的原理

熟悉nodeJs的原理

作者: js_hcl | 来源:发表于2019-04-23 17:39 被阅读0次

一、文件全局对象(隐藏外层函数的参数)

exports.yy=function(){};

module.exports={
    xx:function(){}
};

for(i of arguments){
    console.log(i)
}
--------------------------------------------------------
然后node 命令执行,结果↓↓
{ yy: [Function] }  //参数1  其实就是exports

{ [Function: require] //参数2  其实就是require 用于引入文件
  resolve: { [Function: resolve] paths: [Function: paths] },
  main:
   Module {
     id: '.',
     exports: { xx: [Function: xx] },
     parent: null,
     filename:
      'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\one.js',
     loaded: false,
     children: [],
     paths:
      [ 'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\node_modules',
        'D:\\360MoveData\\Users\\Administrator\\Desktop\\node_modules',
        'D:\\360MoveData\\Users\\Administrator\\node_modules',
        'D:\\360MoveData\\Users\\node_modules',
        'D:\\360MoveData\\node_modules',
        'D:\\node_modules' ] },
  extensions:
   { '.js': [Function], '.json': [Function], '.node': [Function] },
  cache:
   { 'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\one.js':
      Module {
        id: '.',
        exports: [Object],
        parent: null,
        filename:
         'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\one.js',
        loaded: false,
        children: [],
        paths: [Array] } } }

Module { //参数3  其实就是Module,用于导出文件
  id: '.',
  exports: { xx: [Function: xx] },
  parent: null,
  filename:
   'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\one.js',
  loaded: false,
  children: [],
  paths:
   [ 'D:\\360MoveData\\Users\\Administrator\\Desktop\\css\\node_modules',
     'D:\\360MoveData\\Users\\Administrator\\Desktop\\node_modules',
     'D:\\360MoveData\\Users\\Administrator\\node_modules',
     'D:\\360MoveData\\Users\\node_modules',
     'D:\\360MoveData\\node_modules',
     'D:\\node_modules' ] }

D:\360MoveData\Users\Administrator\Desktop\css\one.js   //参数4 --filename

D:\360MoveData\Users\Administrator\Desktop\css  //参数5 --dirname
  • 总结 其实就是外层,加了个函数,传入5个参数。分别为:
  • exports 可以用于导出收集器。然后赋值给Module.exports
  • require
  • Module 真正导出的是Module.exports对象。
  • --filename
  • --dirname

相关文章

  • 熟悉nodeJs的原理

    一、文件全局对象(隐藏外层函数的参数) 总结 其实就是外层,加了个函数,传入5个参数。分别为:exports 可以...

  • 大规模NodeJS项目架构与优化

    聊聊大规模NodeJS项目架构 NodeJS异步IO原理浅析及优化方案 NodeJS内存管理机制及内存优化 大规模...

  • NodeJS基础原理

    NodeJS基础原理 异步IO原理浅析及优化方案 异步IO的好处(输入输出input output) 前端通过异步...

  • nodejs+mongoDB+mongoose商品发布Demo

    前言:使用nodejs实现登录、注册、商品发布、商品列表展示Demo,通过这个demo熟悉nodejs使用,mon...

  • 大规模Node项目架构和优化

    这节课我们要讨论什么 1、NodeJs异步IO原理浅析及优化方案 2、nodejs内存管理机制以及内存优化 3、大...

  • nodejs原生模块快速熟悉

    path __dirname Node.js 中,__dirname 总是指向被执行 js 文件的绝对路径,所以当...

  • 小白入门微服务(1) - RPC 初体验,python、node

    概述 前言 什么是 RPC RPC 原理 常用 RPC 框架对比 thrift 基础 python、nodejs ...

  • Fixing npm permissions

    对nodejs不太熟悉,在ubuntu安装了了nodejs,使用的方式是下载了可执行包,然后在使用 的时候报错: ...

  • 学习计划

    1. 2017.8.10 -- 2017.8.20 基本了解node.js的原理,能够较为熟练的调用NodeJs的...

  • NodeJS:模块加载原理

    模块的工作原理 实现“模块”功能的奥妙就在于JavaScript是一种函数式编程语言,它支持闭包。如果我们把一段J...

网友评论

    本文标题:熟悉nodeJs的原理

    本文链接:https://www.haomeiwen.com/subject/ldrbgqtx.html