初识Nodejs

Node.js的诞生

  • 作者Ryan Dahl 瑞恩·达尔

    • 2004 纽约 读数学博士

    • 2006 退学到智利 转向开发

    • 2009.5对外宣布node项目,年底js大会发表演讲

    • 2010 加入Joyent云计算公司

    • 2012 退居幕后

Node.js 是一种建立在Google Chrome’s v8 engine上的 non-blocking (非阻塞), event-driven (基于事件的) I/O平台. Node.js平台使用的开发语言是JavaScript,平台提供了操作系统低层的API,方便做服务器端编程,具体包括文件操作、进程操作、通信操作等系统模块

Node.js可以用来做什么?

  • 具有复杂逻辑的动态网站

  • WebSocket服务器

  • 命令行工具

  • 带有图形界面的本地应用程序

  • ......

终端基本使用

打开应用

  • notepad 打开记事本

  • mspaint 打开画图

  • calc 打开计算机

  • write 写字板

  • sysdm.cpl 打开环境变量设置窗口

常用命令

  • md 创建目录

  • rmdir(rd) 删除目录,目录内没有文档。

  • echo on a.txt 创建空文件

  • del 删除文件

  • rm 文件名 删除文件

  • cat 文件名 查看文件内容

  • cat > 文件名 向文件中写上内容。

Node.js开发环境准备

  1. 普通安装方式官方网站

  2. 多版本安装方式

    • 卸载已有的Node.js

    • 下载nvm

    • 在C盘创建目录dev

    • 在dev目中中创建两个子目录nvm和nodejs

    • 并且把nvm包解压进去nvm目录中

    • 在install.cmd文件上面右键选择【以管理员身份运行】

    • 打开的cmd窗口直接回车会生成一个settings.txt文件,修改文件中配置信息

    • 配置nvm和Node.js环境变量

      • NVM_HOME:C:\dev\nvm

      • NVM_SYMLINK:C:\dev\nodejs

    • 把配置好的两个环境变量加到Path中

nvm常用的命令

  • nvm list 查看当前安装的Node.js所有版本

  • nvm install 版本号 安装指定版本的Node.js

  • nvm uninstall 版本号 卸载指定版本的Node.js

  • nvm use 版本号 选择指定版本的Node.js

Node.js之HelloWorld

  • 命令行方式REPL

  • 运行文件方式

  • 全局对象概览

服务器端模块化

  • 服务器端模块化规范CommonJS与实现Node.js

  • 模块导出与引入

  • 模块导出机制分析

  • 模块加载规则

    • 模块查找 不加扩展名的时候会按照如下后缀顺序进行查找 .js .json .node

  • 模块分类

    • 自定义模块

    • 系统核心模块

      • fs 文件操作

      • http 网络操作

      • path 路径操作

      • querystring 查询参数解析

      • url url解析

      • ......

ES6常用语法

  • 变量声明let与const

  • 变量的解构赋值

    • 数组解构赋值

    • 对象解构赋值

    • 字符串解构赋值

  • 字符串扩展

    • includes()

    • startsWith()

    • endsWith()

    • 模板字符串

  • 函数扩展

    • 参数默认值

    • 参数结构赋值

    • rest参数

    • 扩展运算符

    • 箭头函数 

Node初识的更多相关文章

  1. node 初识

    跟随startup engineering 已经到了week2了,目前为止课程都没有详细介绍node,恐怕以后也不会讲得太细,只是罗列出了一堆阅读材料供你自学.花了点时间阅读些许,在此做个墨迹. Ho ...

  2. seajs和requirejs对比;node初识

    seajs 引包 载入主模块(seajs.use('./main')) 定义模块define(function(require,exports,module)) 模块化的好处 1.开发效率高 2.可以 ...

  3. node初识——node中的require方法与require.js的区别

    出处:http://blog.csdn.net/u013613428/article/details/51966500 作为一个前端的新手,总是诧异于js的模块载入方式,看到了通过requireJs提 ...

  4. Node初识笔记 1第一周

    #下载安装好node > https://nodejs.org/en/ #  打开cmd  调整好执行路径 . 1.js是JS文件名,cd调招路径,‘node’+空格 +JS文件名(带上扩展名) ...

  5. babeljs源码

    babel.min.js!function(e,t){"object"==typeof exports&&"object"==typeof mo ...

  6. node.js系列笔记之node.js初识《一》

    node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...

  7. 初识node.js(通过npm下载项目依赖的包的过程)

    一.初识node.js 简单的说Node.js 就是运行在服务器端的JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事 ...

  8. 前端知识(一)02 初识 Node.js-谷粒学院

    目录 初识Node.js 一.Node.js的概念 1.JavaScript引擎 2.什么是Node.js 3.Node.js有什么用 二.BFF 1.BFF 解决什么问题 2.BFF是什么 三.安装 ...

  9. Node.js之路【第一篇】初识Node.js

    什么是Node.js 1.Node.js就是运行在服务端的JavaScrip. 2.Node.js是一个基于Chrome JavaScrip运行时简历的一个平台. 3.Node.js是一个非阻塞I/O ...

随机推荐

  1. 浅谈JSON与与JS相关的JSON函数

    本文内容主要引用在微信公众号上看到的一片文章,因为自己对Json了解不是很深入,所以就整理出这篇博文与大家分享! 一. JSON是一种格式,基于文本,优于轻量,用于交换数据 1.一种数据格式 数据的传 ...

  2. Anaconda3(2)Anaconda3中安装TensorFlow

    https://zhuanlan.zhihu.com/p/34730661 1. 安装anaconda3:自行下载.安装[注意版本] (可参考引用链接) 2. 搭建TensorFlow环境 cuda1 ...

  3. arduino驱动步进电机

    https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/install-software 1安装库 Adafruit_Motor ...

  4. JavaScript遍历

  5. web服务本质

    目录 django 框架引入: web框架本质 HTTP协议 多功能web服务 封装,分发处理 django 框架引入: web框架本质 web框架本质: 软件开发架构: c / s ; b/ s - ...

  6. github执行clone操作时报错

    在执行github上的clone操作时,报 ssh_exchange_identification: Connection closed by remote host 在网上找了好多种解决办法,都没有 ...

  7. 【视频开发】伽马校正(gamma correction)学习笔记

    我相信几乎所有做图像处理方面的人都听过伽马校正(Gamma Correction)这一个名词,但真正明白它是什么.为什么要有它.以及怎么用它的人其实不多.我也不例外.  最初我查过一些资料,但很多文章 ...

  8. es6 Decorator修饰器

    1.类的修饰: 修饰器(Decorator)函数,用来修改类的行为.修饰器是一个对类进行处理的函数.修饰器函数的第一个参数,就是所要修饰的目标类. @testable class MyTestable ...

  9. cad 一个小技巧--复制视口带冻结信息

    cad使用 ctrl+c 和 ctrl+v 进行跨文件复制视口的时候,会出现复制视口冻结信息丢失,因为你只选择了视口进行复制, 如果要实现带上冻结信息,那么要把含有相关图层的图元一起 ctrl+c/v ...

  10. Python【每日一问】33

    问: [基础题1]:设计一个重量转换器,输入以“g”为单位的数字后返回换算成“kg”的结果 [基础题2]:设计一个求直角三角形斜边长的函数,比如直角边长分别为3和4,输出结果为:The right t ...