nodejs学习第一天之模块
1.运行js文件

2.node 与 js 的区别
相同:数据类型,语法结构,对象 等基本一致
不同:在js中的顶层对象window 在node中没有在node中 顶层对象为global对象 其不对外进行访问等等 在js中定义一个a变量是能够用window.a访问的 但在node中定义一个a变量是不能用global.a(会返回undefined)变量访问的
3.模块的概念
一个文件就是一个模块 每个模块都有自己的作用域
我们使用var来申明的一个变量,他并不是全局的而是属于当前模块下

Console.log(__fillname)打印的是当前文件被解析过后的绝对路径;
Console.log(__dirname)打印的是当前模块文件所在目录的绝对路径,该属性不是全局的,而是模块作用域下的
3.1模块加载系统
在node中不允许用script标签加载模块 如果要加载模块使用require(‘模块路径’)

其中路径./不带的话node会加载node中的核心模块
3.2node文件加载机制
1.首先按照加载的文件名进行查找
2.如果没有找到会在文件名后面加上.js的后缀进行查找
3.如果还没有找到会在文件名后面加上.json的后缀进行查找
4.如果还没有找到会在文件名后面加上.node进行查找
5.如果还没有找到会报错
4.如何在本模块访问另外一个模块定义的局部变量
1.通过global变量添加 (不推荐使用)
2.通过module(保存和提供一些和当前模块有关的一些信息)对象,module对象中有一个子对象:exports对象 我们可以通过这个对象把一个模块中的局部变量对象提供访问
3.
4.在模块作用域,还有一个模块的作用域对象,exports,它其实就是module.exprots

5.global下的对象
1.progress对象:可以查看当前进程
1.1progress对象下的最重要一个对象stdin、stdout标准输入输出流(IO)通常称为I/O操作 提供了操作输入数据和输出数据的方法

1.2默认情况下,输入流是关闭的,要监听输入数据流,首先要开启输入流

1.3简单的数据加减

本人这是第一次发博客,如果有写的不对的地方还请大牛们指正,以后还会不定期的更新关于nodejs的后续学习内容,有希望了解的或者是有独到见解的可以评论我
nodejs学习第一天之模块的更多相关文章
- 【nodejs学习】0.nodejs学习第一天
1.模块 大一点的程序都需要模块化,nodejs也不例外,代码放到不同的文件中,每一个文件就可以是一个模块,文件路径名就是一个模块名.每个模块中包含三个预先定义的变量: 1.require:用于在当前 ...
- NodeJS学习笔记之MongoDB模块
其中还有,nodejs远程连接mysql数据库 一,开篇分析 这篇属于扩展知识篇,因为在下面的文章中会用到数据库操作,所以今天就来说说它(Mongodb模块). (1),简介 MongoDB是一个基于 ...
- nodejs学习第一天
//按照nodejs文档上第一页的例子敲了一遍运行了 迷茫 先这样吧 慢慢来 const http = require('http'); const host = '127.0.0.1'; const ...
- NodeJs学习日报day5——导入模块
const { match } = require("assert") function dateFormat(dataStr) { const dt = new Date(dat ...
- NodeJS学习笔记 进阶 (12)Nodejs进阶:crypto模块之理论篇
个人总结:读完这篇文章需要30分钟,这篇文章讲解了使用Node处理加密算法的基础. 摘选自网络 Nodejs进阶:crypto模块之理论篇 一. 文章概述 互联网时代,网络上的数据量每天都在以惊人的速 ...
- NodeJS学习笔记之Connect中间件模块(一)
NodeJS学习笔记之Connect中间件模块(一) http://www.jb51.net/article/60430.htm NodeJS学习笔记之Connect中间件模块(二) http://w ...
- nodeJS学习(9)--- nodeJS模块:exports vs module.exports
模块简介: 通过Node.js的官方API可以看到Node.js本身提供了很多核心模块 http://nodejs.org/api/ 这些核心模块被编译成二进制文件,可以 require('模块名') ...
- Python学习-第一天-函数和模块的使用
目录 Python学习-第一天总结 print输出的一种简单格式 函数参数之可变参数 模块管理函数 if else语句的单行实现(简洁) 变量作用域 函数书写格式 Python学习-第一天总结 pri ...
- Nodejs学习笔记(1) Nodejs安装+借助express模块简单部署服务器
1 安装 1.1 下载和安装 1.2 什么是REPL?如何使用? 1.3 npm对单一模块的安装和删除功能 1.4 通过package.json自定义模块(安装模块) 1.5 设置全局目录 2 部署网 ...
随机推荐
- Canvas createRadialGradient API
Canvas createRadialGradient API <!DOCTYPE html> <html lang="en"> <head> ...
- CI Weekly #12 | 微信小程序的自动化测试进阶
岁末将至,站在年终冲刺的尾巴上,flow.ci 新增了个人和团队设置的功能: 上线团队功能,注册时默认创建一个与用户名一致的团队,可设置:团队名称.增减团队成员,后续会不断完善: 增加个人设置,可修改 ...
- Javascript/js的相等和不等运算符(= 、== 、===)
"=="和"==="运算符用于比较两个值是否相等,当然它们对相等的定义不尽相同.两个运算符允许任意类型的操作数,如果操作数相等则返回tru,否则返回false. ...
- API网关Ocelot 使用Polly 处理部分失败问题
在实现API Gateway过程中,另外一个需要考虑的问题就是部分失败.这个问题发生在分布式系统中当一个服务调用另外一个服务超时或者不可用的情况.API Gateway不应该被阻断并处于无限期等待下游 ...
- We Chall-Training: Get Sourced-Writeup
MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...
- SysLog简介和java操作实例
什么是SysLog syslog协议属于一种主从式协议:syslog发送端会传送出一个小的文字讯息(小于1024字节)到syslog接收端.接收端通常名为“syslogd”.“syslog daemo ...
- 将图片保存成png 或者jpg格式
-(void)saveImage:(UIImage*)image{ NSString *pngPath = [NSHomeDirectory() stringByAppendingPathCo ...
- 下一个项目为什么要用 SLF4J
阿里巴巴 Java 开发手册 前几天阿里巴巴在云栖社区首次公开阿里官方Java代码规范标准,就是一个PDF手册,有命名规范,让你知道自己原来取的每一个类名.变量名都是烂名字,真替你家未来孩子担心:有集 ...
- 【4N魔方阵】
/* 4N魔方阵 */ #include<stdio.h> #include<stdlib.h> #define N 8 int main(void){ int i, j; ] ...
- Ninject之旅之十二:Ninject在Windows Form程序上的应用(附程序下载)
摘要: 下面的几篇文章介绍如何使用Ninject创建不同类型的应用系统.包括: Windows Form应用系统 ASP.NET MVC应用系统 ASP.NET Web Form应用系统 尽管对于不同 ...