Node.js实战项目学习系列(2) 开发环境和调试工具
前言
上一节让我们对Node.js有一个初步的了解,那么现在可以开始正式学习下Node.js的开发了,但是任何一门语言要设计到开发,就必须先学习开发环境以及调试。本文将主要讲解这些内容。
本文涉及到的代码全部可在github地址找到>>>node 代码
安装
点击查看>>>node 中文官网地址
【版本选择】

看图发现包含两种版本:长期支持的稳定版本 以及 当前发布版(包含很多最新的特性)
安装的过程就省略了...
开发环境
那么我们如果想要开发一个node程序,需要什么先了解哪些概念呢?
【1】CommonJS
代码规范,如果AMD,CMD一样的代码组织规范(模块管理系统)
【2】global
代码运行在浏览器时,我们可以使用浏览器提供的全局对象:window以及DOM,BOM。但是node.js是运行在chrome V8引擎上的。给我们提供了 “global” 全局对象使用
【3】process
代表当前执行的进程,这个是挂载在global下面的。在一些高级点的功能需要使用到
下面我们写第一个node.js文件
文件名:01_run.js
console.log('hello Node');
那么我们如何执行文件呢。此时打开命令行工具,执行命令
node 01_run.js
可以看到输出结果:

调试工具
实际开发中我们会使用node提供的一款调试工具 "inspect" ,这里先简单的了解下使用,后面会详细学习该工具
1、命令行工具执行
node --inspect-brk 01_run.js

2、使用chrome浏览器,地址栏输入
chrome://inspect

3、点击上图中红色框框里面的 inspect

上图就是实际上在node执行代码时,node底层帮我们把代码进行的封装。
我们把封装的代码提取出来分析下:
(function(exports, require, module, __filename, __dirname) {
console.log('hello Node');
}
);
>>> node把我们的代码分装在一个函数中并且添加了5个参数,我们先只看前3个参数:exports ,require,module
>>> 其实这个就是CommonJS模块的话规范了。
小结
通过本文我们初步学习了
- node的版本分为 长期稳定版本(LTS) 以及 当前新特性版本(current)
- node的全局变量是global
- 编写了第一个node代码,简单了解了下inspect调试工具
接下来我们将主要学习 CommonJS规范。
Node.js实战项目学习系列(2) 开发环境和调试工具的更多相关文章
- Node.js实战项目学习系列(1) 初识Node.js
前言 一直想好好学习node.js都是半途而废的状态,这次沉下心来,想好好的学习下node.js.打算写一个系列的文章大概10几篇文章,会一直以实际案例作为贯穿的学习. 什么是node Node.js ...
- Node.js实战项目学习系列(5) node基础模块 path
前言 前面已经学习了很多跟Node相关的知识,譬如开发环境.CommonJs,那么从现在开始要正式学习node的基本模块了,开始node编程之旅了. path path 模块提供用于处理文件路径和目录 ...
- Node.js实战项目学习系列(4) node 对象(global、process进程、debug调试)
前言 在之前的课程我们学习了Node的模块化规则,接下来我们将学习下 Node的几个新特性:global ,process进程,debug调试 global 跟在浏览器中的window一样都是全局变量 ...
- Node.js实战项目学习系列(3) CommonJS 模块化规范
前言 想开始编写Node.js代码,那么我们就必须先熟悉它的模块化规范CommonJS,本文将详细讲解CommonJS规范 本文代码 >>> github 地址 CommonJS N ...
- iKcamp团队制作|基于Koa2搭建Node.js实战项目教学(含视频)☞ 环境准备
安装搭建项目的开发环境 视频地址:https://www.cctalk.com/v/15114357764004 文章 Koa 起手 - 环境准备 由于 koa2 已经开始使用 async/await ...
- 【强烈推荐,超详细,实操零失误】node.js安装 + npm安装教程 + Vue开发环境搭建
node.js安装 + npm安装教程 + Vue开发环境搭建 [强烈推荐,超详细,实操零失误] 原博客园地址:https://www.cnblogs.com/goldlong/p/8027997.h ...
- 前端(Node.js)(3)-- Node.js实战项目开发:“技术问答”
1.Web 与 Node.js 相关技术介绍 1.1.Web应用的基本组件 web应用的三大部分 brower(GUI)<==>webserver(business logic.data ...
- java与.net比较学习系列(1) 开发环境和常用调试技巧
最近因为公司项目要由.net平台转到java平台的原因,之前一直用.net的我不得不开始学习java了,刚开始听到说要转java的时候很抗拒,因为我想专注在.net平台上,不过这样也并不完全是坏事,通 ...
- 安装node.js+express for win7的Web开发环境配置
1.安装 node.js. 进入官网的下载地址:http://www.nodejs.org/download/ . 选择Windows Installer或者选择Windows Installer ( ...
随机推荐
- python之sqlalchemy的使用
准备数据 from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column from sqla ...
- .net 获取远程访问的ip
这两天一直做获取远程访问的ip和自己的ip相关的问题. 在解决获取ip相关问题的时候,主要使用了上下文对象,httpcontext对象.原理很简单,内部有两大对象,request和response.里 ...
- kubernetes-核心资源之Ingress
1.Ingress 在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的.为了使外部的应用能够访问集群内的服务,在Kubernetes中可以通过Node ...
- F. Multicolored Markers(数学思维)
思维:思维就是将大的矩形放在小矩形里面,让大矩形的宽和长尽量靠近. 很容易得到 (a+b)% i = 0 的话, 保证了大矩形的形成,同时里面表示了两种情况:1, a % i =0, b % i=0; ...
- JavaWeb工程中web.xml基本配置(转载学习)
一.理论准备 先说下我记得xml规则,必须有且只有一个根节点,大小写敏感,标签不嵌套,必须配对. web.xml是不是必须的呢?不是的,只要你不用到里面的配置信息就好了,不过在大型web工程下使用该文 ...
- python购物车demo
product_list = [ ('Iphone',11800), ('Mac Pro',13800), ('BMW CAR',480000), ...
- 292. Nim Game(easy)
You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...
- C Programming Style 总结
对材料C Programming Style for Engineering Computation的总结. 原文如下: C Programming Style for Engineering Com ...
- javascript高级排序算法之快速排序(快排)
javascript高级排序算法之快速排序(快排)我们之前讨论了javascript基本排序算法 冒泡排序 选择排序 插入排序 简单复习: 冒泡排序: 比较相邻的两个元素,如果前一个比后一个大,则交换 ...
- win10启动nginx但是访问不了
首先验证配置,是否正常:nginx -t 我这里配置正常. 我的原因是设置了代理,打开IE浏览器,设置>Internet选项>连接>局域网设置>代理删除.