REPL环境
一、Node的REPL基本操作
REPL(Read-eval-print-loop):交互式解析器
在REPL环境下,可以定义和运行变量、函数、对象。
REPL的常用命令:
进入node,即进入了REPL环境,在命令窗口输入node
退出:输入.exit或者连续按ctrl+c两次
点击tab可以打印出Node.js中的所有对象
点击向上/向下可以查看历史命令
.save filename保存输入的命令
.load filename加载文件
在REPL环境下,可以用_代替上一次表达式的结果
二、node读写文件
- 加载文件读写模块
- 开始读写文件,readFile的参数一:要读写的文件路径,参数二回调函数
- 捕获异常,如果数据有异常就抛出异常,如果没有异常就输出
- 返回的数据是以十六进制输出,为了得到正常数据,用toString方法
var fs=require("fs");
fs.readFile("data.json",function(error,data){
if(error){
throw error;
}
console.log(data.toString());
})
三、global的属性和方法
- 在node中,没有window,global相当于window,是顶级对象。
- setTimeout:定时器,在指定秒数后执行回调函数,如果指定秒数为0,在执行栈完成后再执行,存储在异步队列中。
- setImmediate:立即执行,在执行栈完成后再执行,存储在异步队列中,它和setTimeout时间为0的执行顺序不确定。
- process.nextTick:将要执行的程序放在执行栈的最后。所以比setTimeout0和setImmediate先执行。
- setInterval:定时器,在规定时间内重复执行
setTimeout(function () {
console.log("timeout");
}, 0);
setImmediate(function(){
console.log("immediate");
})
console.log("执行栈");
process.nextTick(function(){
console.log("添加到执行栈末尾");
})
执行结果:
执行栈
添加到执行栈末尾
timeout
immediate
获取路径:
- __dirname :当前执行的js所在的文件夹
- __filename:当前执行的js的路径
- process.cwd():当前执行node.exe的路径
REPL环境的更多相关文章
- Node的REPL环境
1. Node的REPL环境 什么是REPL REPL全称 Read-eval-print-loop,交互式解析器 REPL可以提供给程序员对Node.js的一些api快速测试 REPL的基本操作 定 ...
- nodejs/REPL环境命令行操作命令
1,输入node 进入node[REPL]环境 2,按两次[ctrl+c]退出node[REPL]环境 3,上箭头会查找上次输入的命令 4,cls清屏 5,tab键会自动补全路径 6,REPL环境
- Intellij Idea 13:运行Clojure的repl环境
准备工作:1. 安装cursive插件. a) 官网地址:https://cursiveclojure.com/userguide b) 插件的Reposi ...
- Node REPL环境
1.概述 REPL全称Read,Eval,Print,Loop,简单理解为接收用户输入,执行用户输入,打印执行结果并输出到控制台,进行下一次轮回,可以进行一些简单的测试,类似于浏览器的控制台. 命令行 ...
- node.js入门学习(一)环境安装,REPL,fs模块,path模块,http模块
一.node.js介绍 1.1.node.js是什么 官网首页总结:Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时. 1)node.js是一个开发平台,就像j ...
- Python实用环境pyenv搭建教程
实验系统:kubuntu-15.10-desktop-amd64 关于pyenv的介绍:一般在操作系统中我们会安装多个Python版本,在*nix系统中一般默认就自带了Python2与Python3两 ...
- node js学习(二)——REPL(交互式解释器)
1.简介 Node.js REPL(Read Eval Print Loop:交互式解释器) 表示一个电脑的环境,类似 Window 系统的终端或 Unix/Linux shell,我们可以在终端中输 ...
- Node.js REPL终端
REPL表示读取评估和演示打印循环(Read Eval Print Loop),它代表一个命令输入和系统在交互模式的输出响应窗口控制台或Unix/ Linux的shell计算机环境. Node.js附 ...
- 常见编程语言对REPL支持情况小结[转]
文章转载自http://www.nowamagic.net/librarys/veda/detail/2462 最近跟一个朋友聊起编程语言的一些特性,他有个言论让我略有所思:“不能REPL的都是渣”. ...
随机推荐
- 北京培训记day2
后缀三姐妹 P.S.后缀大家族关系:后缀自动机fail指针=后缀树,后缀树前序遍历=后缀数组 一.后缀数组:orz罗穗骞集训队论文 给每个后缀按字典序排序 rank[]表示从i开始的后缀排名多少 sa ...
- 现在有哪些浏览器的哪些版本支持 HTML5
现在有哪些浏览器的哪些版本支持 HTML5 1.IE IE9支持部分 IE10+支持2.Firefox Firefox3.5,3.6支持大部分 Firefox4.0+支持3.Chrome Chrome ...
- GIT分布式版本控制系统
Git诞生历史 我想大家还记得Linus torvalds在1991年时发布了Linux操作系统吧,从那以后Linux系统变不断发展壮大,因为Linux系统开源的特性,所以一直接受着来自全球Linux ...
- 命名空间jquery
命名空间的意思就是 同一个元素有绑定了2个相同的事件,比如2个scroll,这个时候你做其他交互的时候只想触发第二个scroll事件 就可以用命名空间做了 <button id="b ...
- 关于entityframework 自动生成实体类中加验证的属性重新生成后属性被覆盖解决办法
1.手动创建一个部分类 (你可以手动创建 partial class, 内容为空) [MetadataType(typeof(AppleMetadata))] public partial class ...
- Java集合之LinkedHashMap
一.初识LinkedHashMap 上篇文章讲了HashMap.HashMap是一种非常常见.非常有用的集合,但在多线程情况下使用不当会有线程安全问题. 大多数情况下,只要不涉及线程安全问题,Map基 ...
- 耗时两月,NHibernate系列出炉
写在前面 这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天. nhibernate系列从开始着手写,到现在前后耗费大概两个月的时间,通过总 ...
- Intellij Idea/Webstorm/Phpstorm 的高效快捷键
1. shift + F6可以理解为F2的豪华重量版,不但可以重命名文件名,而且可以命名函数名,函数名可以搜索引用的文件,还可以重命名局部变量.还可以重命名标签名.在sublime text中有个类似 ...
- hdu2014青年歌手大赛
Problem Description 青年歌手大奖赛中,评委会给参赛选手打分.选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分. Input 输入数据有多组,每组占 ...
- codility flags solution
How to solve this HARD issue 1. Problem: A non-empty zero-indexed array A consisting of N integers i ...