PHP开发技术栈(LAMP) Linux  Apache  MySql  PHP
node.js 全栈开发技术栈(MEAN): MongoDB  Express  Angular  Node.js


现阶段学习的目标:

  • 了解服务器开发过程
  • 会使用node.js 开发基本的 http 服务程序(web应用程序)

node.js

特点:
1. 事件驱动(当事件被触发时,执行传递过去的回调函数)
2. 非阻塞I/O模型(当执行I/O操作时,不会阻塞线程)
3. 单线程


一个新 get 的概念:(你啥也没看见⁄ (⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ )

  配置环境变量的意义:当在控制台输入命令时,如果输入的不在当前目录下,这时候如果设置了环境变量,那么系统就会在环境变量中
挨个寻找输入的命令所在的文件夹,直到找到相应的路径。


使用node.js开发网站与传统开发网站的区别:

传统网站:需要web容器

node.js 进行开发:不需要web容器,因为node.js本身就是一个web服务器


node 的版本管理器 nvm

下载nvm的地址:https://github.com/coreybutler/nvm-windows/releases

nvm 用来管理一台计算机上的多个node版本

  • nvm list 打星号表示当前正在使用的
  • nvm using node v8.4.0
  • nvm install latest
  • nvm install 版本号
  • nvm uninstall 版本号

退出node环境
1. .exit
2. 按住Ctrl键,按两下C键


一段js代码,写入文件操作

//写入文件操作
let fs = require('fs');
let msg = 'Hello World!';
console.log('000')
fs.writeFile('./hello.txt',msg,'utf8',function(err){
   console.log('111')
// 如果err===null 表示写入成功
if(err){
console.log('写入文件失败');
}else{
console.log('写入文件成功!');
}
});
console.log('222')

可以注意到上面使用到了require( )函数,require( )函数的作用就是加载 fs 模块

而另一个process模块(举个栗子)使用时无需通过require() 函数来加载

原因:process模块是全局的模块,fs不是全局模块,全局模块可以直接使用
非全局模块需要require( )函数加载

判断需不需要require( )函数加载
1.直接打开node文档查看相应的函数
2. 文档左边栏有Globals 模块,可以直接查看

  另外,在上面的代码中,有几个输出数字的console.log(),那么输出的顺序是什么呢?

  答案是 000  222  111

  这样输出的原因就是上面的  writeFile( ) 函数是异步执行的,不会等写入完毕就运行了后面代码

 

node.js 学习01的更多相关文章

  1. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  2. Node.JS学习——学习笔记

    Node.JS--学习笔记 2020年02月23日11:52:01 我打算自学NodeJS-通过阅读NodeJS官网来完成. https://nodejs.org/dist/latest-v13.x/ ...

  3. NODE.JS学习的常见误区及四大名著

    NODE.JS学习的常见误区及四大名著 前段时间由于不满于社区里很多人对于NODE.JS的种种误解而写了一篇文章名为: NODE.JS之我见:http://www.cnblogs.com/pugang ...

  4. Node.js学习系列总索引

    Node.js学习系列也积累了一些了,建个总索引方便相互交流学习,后面会持续更新^_^! 尽量写些和实战相关的,不讲太多大道理... Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- ...

  5. 【入门必备】最佳的 Node.js 学习教程和资料书籍

    Web 开发人员对 Node.js 的关注日益增多,更多的公司和开发者开始尝试使用 Node.js 来实现一些对实时性要求高,I/O密集型的业务.这篇文章中,我们整理了一批优秀的资源,你可以得到所有你 ...

  6. node.js学习(1)

    新建便笺 3 node.js学习(1) 1)安装 http://nodejs.org/download/下载. 2)编写一个案例 var http=require("http"); ...

  7. 我的Node.js学习历程

    学习一门技术,每个人都有每个人的方法.我的方法很简单,做项目. 基本概念 在搭建一个node网站之前,还是要掌握一些基本的概念的,这里列举一下,具体的内容大家自己到网上去查: npm bower ex ...

  8. Node.js学习之TCP/IP数据通讯

    Node.js学习之TCP/IP数据通讯 1.使用net模块实现基于TCP的数据通讯 提供了一个net模块,专用于实现TCP服务器与TCP客户端之间的通信 1.1创建TCP服务器 在Node.js利用 ...

  9. Node.js学习起步

    Node.js学习: 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一个事件驱 ...

随机推荐

  1. Codeforces Gym100952 A.Who is the winner? (2015 HIAST Collegiate Programming Contest)

      A. Who is the winner?   time limit per test 1 second memory limit per test 64 megabytes input stan ...

  2. CF 1006C Three Parts of the Array【双指针/前缀和/后缀和/二分】

    You are given an array d1,d2,-,dn consisting of n integer numbers. Your task is to split this array ...

  3. NOI 1.5编程基础之循环控制 44:第n小的质数

    描述 输入一个正整数n,求第n小的质数. 输入 一个不超过10000的正整数n. 输出 第n小的质数. 样例输入 10 样例输出 29

  4. order by 中利用 case when 排序

    order by case when a.ShopNumber in(1,2,3) then 0 else 1 end

  5. JVM的内存布局

    JVM的内存布局包括,其中: Java虚拟机在执行Java程序的过程中会把它所管理的内存(线程相关?)划分为若干个不同的数据区域.有些区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结 ...

  6. Eclipse导入idea 项目

    学校做的项目老师会导入到Eclipse下查看. 使用idea做的项目直接导入eclipse会发生问题(file-Export to Eclipse) 让Eclipse兼容idea项目,或者直接导入id ...

  7. 洛谷 P4173 残缺的字符串

    (不知道xjb KMP可不可以做的说) (假设下标都以0开头) 对于有一定偏移量的序列的 对应位置 匹配或者数值计算的题,这里是有一种套路的,就是把其中一个序列翻转过来,然后卷积一下,所得到的新序列C ...

  8. small test on 5.30 night T1

    数学题使劲推就对了. 让我们设  g(x) = ∑ C(i,x) * b^i ,然后后面验算了一张纸QWQ,懒得再打一遍了,回家我就把这张演算纸补上QWQ,先上代码. #include<cstd ...

  9. HDOJ 4903 The only survival

    Discription: There is an old country and the king fell in love with a devil. The devil always ask th ...

  10. 8.2(java学习笔记)反射

    一.基础知识 对象是表示或封装一些数据,一个类被加载后JVM会创建一个对应该类的Class对象, 类的整个结构信息会被放在对应的对象中,通过这个对象我们可以获取改类的全部信息, 而这些操作称为反射. ...