Node.js是什么?提供了哪些内容?
什么是Node.js?
Node.js是基于Chrome V8 引擎的 JavaScript运行时(运行环境)。
Node.js提供了哪些内容?
- Node.js运行时,JavaScript代码运行时的环境。
- 提供了一些核心模块,应用程序编程接口(Application Program Interface, API)
- 官方API文档 https://nodejs.org/dist/latest-v12.x/docs/api/
- 国内API文档 http://nodejs.cn/api/
- 交互式解析器 (Read Execute Print Loop,REPL),以及一些相关的命令
- 打开命令窗口,输入node并回车,即可进入交互式解析器
- 输入 .help 命令,获取帮助信息。
- 输入 .break 或 .clear (.break命令的别名)跳出当前代码块,例如,if(true)[ .break
- 输入 .save 命令,可以将当前会话中的代码保存到一个文件中,例如, .save app.js
- 输入 .load 命令,可以一个文件中的代码加载到当前会话中执行,例如,.load app.js
- 输入 .editor 命令,进入编辑器模式,Ctrl + D 编辑完成, Ctrl + C 取消编辑
- 输入 .exit 命令,回车既可以退出交互式解析器
- 引入 CommonJS 模块化规范,同时支持 ECMAScript 模块化规范
CommonJS 模块化规范
设计初衷:早期的 JavaScript 没有模块化系统,标准库比较少,缺乏包管理器工具,为了让 JavaScript 可以在如何地方执行,以达到 Java ,C# ,PHP
这些后台语言具备开发大型应用的能力。
设计理念:
- 在 Node.js 模块系统中,每个文件都被视为一个独立的模块,拥有独立的作用域。
- 使用普通方式定义的变量 ,常量 ,函数以及类等等都属于当前模块。
- 通过 exports 和 module.exports 来导出模块中的成员。
- 使用 .require()方法导入其他模块导出的成员。
- 所有的代码都运行在当前模块作用域下,不会污染全局作用域。
- 模块可以被多次导入,但是模块中的代码只会在第一次被加载时执行,执行结果会被缓存,再次加载时,则读取上次缓存的结果
- 模块会按照引入的顺序同步加载。
Node.js是什么?提供了哪些内容?的更多相关文章
- node.js不得不说的12点内容
1.node.js,服务器端的javascript,它允许在后端(脱离浏览器环境)运行javascript代码. 2.事件驱动.异步式I/O的编程模式(单线程)是其核心. 3.node.js的java ...
- Node.js高效按行输出文件内容
const fs = require('fs'); const EventEmitter = require('events'); const util = require('util'); cons ...
- node.js使用markdown-it批量转md内容为html
代码如下: var fs = require('fs'); var MarkdownIt = require('markdown-it'), md = new MarkdownIt(); /* pag ...
- Node.js 基础库
全局对象 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global对象的属性. 我们在 Node.js 中能够直接访问到对象通常都是 global ...
- Node.js文件系统、路径的操作详解
17173 17173 2 75 2014-12-12T05:06:00Z 2014-12-12T05:06:00Z 21 2735 15595 www.17173.com 129 36 18294 ...
- 推荐近期15个 Node.js 开发工具
近来Node.js 越来月流行了,这个基于Google V8 引擎建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.在本文中,我们列出了2015年最佳的15个 Node.js 开发工具.这些 ...
- 【译】在 Chrome 开发者工具中调试 node.js
原文链接 : Debugging Node.js in Chrome DevTools 原文作者 : MATT DESLAURIERS 译文出自 : 掘金翻译计划 译文链接 : https://git ...
- Node.js文件系统、路径的操作函数
Node.js文件系统.路径的操作函数 目录 Node.js文件系统.路径的操作函数 1.读取文件readFile函数 2.写文件 3.以追加方式写文件 4.打开文件 5.读文件,读取打开的文件内容到 ...
- Node.js学习(11)----HTTP服务器与客户端
Node.js 标准库提供了 http 模块,其中封装了一个高效的 HTTP 服务器和一个简易的HTTP 客户端.http.Server 是一个基于事件的 HTTP 服务器,它的核心由 Node.js ...
- e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (二) 图片验证码的识别
上一篇文章讲了“e2e 自动化集成测试 架构 京东 商品搜索 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step 一 京东 商品搜索 ...
随机推荐
- go 指针 通过指针修改int类型的值
指针的定义 :var p *int 取指针的值 :*p ------------------------------------------------------------------------ ...
- golang 之 context包
概述 context是Go中广泛使用的程序包,由Google官方开发,在1.7版本引入.它用来简化在多个go routine传递上下文数据.(手动/超时)中止routine树等操作,比如,官方 ...
- git 学习笔记 -- 创建标签
在Git中打标签非常简单,首先,切换到需要打标签的分支上: $ git branch * dev master $ git checkout master Switched to branch 'ma ...
- 【leetcode-135,62,63 动态规划】分发糖果 ,不同路径
分发糖果 老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分. 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果. 相邻的孩 ...
- springBoot入门到精通-Simple
https://blog.csdn.net/zhiyikeji/article/details/84346189 1.springBoot前期准备 1.环境配置:jdk,maven 2.编写工具:st ...
- spring Boot 学习(四、Spring Boot与任务)
一.异步任务 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的:但是在 处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用 多线程来完成此类任务,其实,在Spri ...
- java之spring mvc之拦截器
1. springmvc 中的拦截器是由实现 HandlerInterceptor 或者继承 HandlerInterceptorAdapter 来实现的. 2. 自定义实现一个拦截器的步骤: a). ...
- 如何在CentOS / RHEL 7上启用IPv6
默认情况下,在RHEL / CenOS 7系统上启用IPv6.因此,如果故意在系统上禁用IPv6,则可以通过以下任一方法重新启用它. 1.在内核模块中启用IPv6(需要重启)2.使用sysctl设置启 ...
- Windows下使用MongoDb的经验
随着NoSql广泛应用MongoDb这个Json数据库现在也被广泛使用,接下来简单介绍一下Windows下如使安装使用MongoDb. 一.安装MongoDb 1.首先去官方网址:(https://w ...
- Centos复制的系统无法获取IP地址
本文主要是解决自己玩虚拟机时遇到的问题,网上查询了很多资料,最好综合多方的资料进行如下总结,如果无法解决您得问题,不要着急慢慢梳理总会解决的,加油~~~ 1.添加一块新的虚拟机的网卡2.删除rm -r ...