Node.js入门笔记(2):全局对象(1)
以下将以API文档为基础进行分析学习
global对象
这些对象在所有模块里都可用。有些对象不是在全局作用域而是在模块作用域里,这些情况下面文档都会标注出来。
__filename——返回当前模块文件解析后的绝对路径,该属性不是全局的,而是模块作用域下的。
因此,直接console.log(_filename);不要加global.。
__dirname——返回当前模块文件所在目录解析后的绝对路径,也不是全局的。
比如,通过定时器打印出每秒的时刻。
setInterval(function () {
var d=new Date();
console.log('现在是:'+d.getFullYear()+'年'+(d.getMonth()+1)+'月'+d.getDay()+'日'+d.getHours()+'时'+d.getMinutes()+'分'+d.getSeconds()+'秒');
},1000);
process对象
process 对象是一个全局对象,可以在任何地方访问到它。 它是EventEmitter的一个实例。通过这个对象提供的属性和方法,可以允许我们对当前程序的进程进行访问和控制。
console.log(process)
发现弹出了很多方法和属性
argv
通过console.log(process)可以发现,返回的是一个数组。第一个数组元素是运行的程序(node.exe),第二个是运行的js文件。第三个是参数
execPath
开启当前进程的绝对路径
env
返回用户的环境信息——一般是操作系统数据之类。
version/versions
返回版本
pid
当前进程的pid,你可以在window进程中看到
title
进程的显示名称。(getter/setter)
arch
返回CPU的处理器架构
platform
操作平台
cwc()
当前进程的工作目录
chdir(directory)
改变进程的工作目录
memoryUsage()
返回内存使用情况
exit
退出
比如5秒之后退出程序
setTimout(function(){
process.exit();
},5000);
kill(pid)
向进程发送信息
stdin/stdout标准输入输出流(I/O)——重要概念
标准输入/出设备:比方说键盘/显示器就是I/O设备
提供操作输入数据和输出数据的方法,亦称为“IO方法”。
console.log()就是标准输出对象实现的。
process.stdout.write('hello!');的结果跟console.log('hello!')是一样的。console.log的实现是是:
console.log = function(d) {
process.stdout.write(d + '\n');
};
同理输入是:
//用于监听用户输入的数据
//默认情况下输入流是关闭的。要监听处理输入流数据,首先要开启输入流
process.stdin.resume();
process.stdin.on('data',function (chunk) {
console.log('用户输入了:'+chunk)
});
用户可以在控制台输入内容

现在还不够完善
process.stdin.resume();
var a,b;
process.stdout.write('请输入a的值:');
process.stdin.on('data',function (chunk) {
if(!a){
a=Number(chunk);
process.stdout.write('请输入b的值:');//输入之后提示输入b
}else{
b=Number(chunk);
process.stdout.write('结果是:'+(a+b));
}
});

Node.js入门笔记(2):全局对象(1)的更多相关文章
- Node.js入门笔记(1):基本概念
Node.js和JavaScript: 核心都是ECMAScrit,比如数据类型,语法结构,内置对象等等. 但是在js中顶层是window 在node中的不存在这个window(console.log ...
- Node.js入门笔记(6):web开发方法
使用node进行web开发 用户上网流程: 表面上看:打开浏览器--输入网址--跳转--上网. 背后的过程是什么呢? http请求网址到指定的主机--服务器接收请求--服务器响应内容到用户浏览器--浏 ...
- Node.js入门笔记(5):案例两则
案例分析:前端自动化 1. 实现一个自动创建前端项目文件的js 通过node.js自动创建前端项目目录,包括js目录,js目录css目录,index.html和对应的内容. 初步的代码如下: var ...
- Node.js入门笔记
第一步自然是安装了.我是用Webstorm这个ide,安装分2步: 1.安装nodejs,下载Windows下的安装版本号.注意是以msi为扩展名的,然后下一步.没啥好说的,下载地址例如以下: 32位 ...
- Node.js入门笔记(3):全局对象(2)
buffer 用于更好操作二进制数据,他是一个全局变量.类似数组. var a=new Buffer(); buffer类的三种实现 第一种创建方式 new Buffer(size);size[Num ...
- Node.js入门笔记(4):文件系统(fs)
文件系统(FileSystem) 文件系统模块 对于文件无外乎创建修改添加. File System - 文件系统模块 - require('fs') fs模块是核心模块,需要使用require导入后 ...
- Node.js 入门资料
小毛驴的阿凡提的 Node.js 入门笔记 http://www.cnblogs.com/Afanty/category/1007304.html
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
随机推荐
- Mvc model验证总结
Model 验证总结 Model 验证总结 1 一.Model 验证标记 1 1.启用客户端验证: 1 2.在 Model 中加入验证标记 2 3 . Model 类中可以添加的验证标记: 3 3.1 ...
- [Java入门笔记] Java语言基础(二):常量、变量与数据类型
常量与变量 什么是常量和变量 常量与变量都是程序在运行时用来存储数据一块内存空间 常量: 常量的值在程序运行时不能被改变,Java中声明常量必须使用final关键字.常量还可以分为两种意思: 第1种意 ...
- swift判断是否真机or模拟器
之前一直用的这种,不知道为什么不怎么靠谱 #if TARGET_IPHONE_SIMULATOR//模拟器 #else//真机 #endif 现在用这种: if Platform.isSimulato ...
- Nova Suspend/Rescue 操作详解 - 每天5分钟玩转 OpenStack(35)
本节我们讨论 Suspend/Resume 和 Rescue/Unrescue 这两组操作. Suspend/Resume 有时需要长时间暂停 instance,可以通过 Suspend 操作将 in ...
- #ifndef _LED_H #endif啥意思?
#ifndef _LED_H#ifndef _LED_H ...... ...... #endif 避免重复引用头文件的内容.
- 解决cefsharp在winform中不显示tooltipText问题(网页元素的title提示)
1.监听网页属性改变事件 webView.PropertyChanged += webView_PropertyChanged; 2.拖一个ToolTip控件到窗体 3.在webView_Proper ...
- bzoj-4514(网络流)
题目链接: 4514: [Sdoi2016]数字配对 Description 有 n 种数字,第 i 种数字是 ai.有 bi 个,权值是 ci. 若两个数字 ai.aj 满足,ai 是 aj 的倍数 ...
- ajax方法总结
ajax方法总结 1.原生ajax get请求和post请求区别:黄色小三角 以get请求为例,输出结果如下: 2.jquery中的ajax 列了常用的6个方法: 3.状态说明 readystate: ...
- PAT 1037. 在霍格沃茨找零钱(20)
如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 -- 就如海格告诉哈利的:"十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易.& ...
- git教程链接
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000