Node.js入门基础
一、命令行窗口
1、打开方式:①cmd ②开始环境中直接找图标
2、通常称呼:终端、shell、小黑屏、cmd窗口
3、常用指令:cd 文件名 (跳转到文件夹下)
dir (列出当前目录下所有文件)
md 文件名 (创建文件)
rd 文件名 (删除文件)
4、目录
. 当前目录
..上一级目录
5、环境变量 path
把文件夹的路径配置到系统的环境变量中后,相当于把文件变成了一个全局变量
在cmd里寻找文件时,首先寻找当前目录,其次是上级目录,找不到就会报错。
二、线程与进程
1、进程
-- 负责为程序的运行提供必备环境
-- 进程就相当于工厂中的车间
2、线程
-- 线程是计算机中最小的计算单位,线程负责执行进程中的程序
-- 线程就相当于工厂中的工人
此外,进程又分为单线程、多线程;js就是单线程;这二者没有明显的好坏之分,只有适用得当
三、node.js简介
1、历史:数学家达尔瑞安在读博士时退学,然后享受惬意悠闲的生活,同时成为码农,以赚取生活费用。接外包两年后,开始处理更高阶的性能问题,但是他发现一个难以解决的问题:服务器和数据库之间的交互由于磁盘的限制,再无法加速,于是在2009年自己编写了node.js
而后经过8年的发展演变,node.js已经框如其名,像节点一样嫁接衍生,成为一个庞大的开源js运行环境
四、common.js
由于模块化的出现,代码的复用效率提高,但没有统一的标准会导致模块内容的重复和混乱,所以common.js出现了,它的目的就是为了规范化js模块。
引用:① require(“被引入的模块地址”) 写在使用模块中
exports 需要被暴露的变量或方法 写在被使用的模块中
② require ("名称") 直接写入模块名称,即可使用
引入自定义的js模块用第一种,用共用的核心模块就用第二种
定义:模块就是写的js文件
标识:① 核心文件 ② 文件模块
五、global 全局对象
类似于window
六、exports和module.exports
exports == module.exports 是true,他们是相同的;
但是
当修改他们的值时,含义是不同的,一直修改的是值,一个修改的是指向
//创建一个对象,在堆内存里就开辟了一个空间,存放内容
//栈内存中的对象就生成指针,指向堆内存中的内容var obj = new Object()
obj.name = "洋芋果果";var obj2 = obj;
obj2.name = "红薯豆豆";console.log("obj.name");
console.log("obj2.name");//打印结果都为“红薯豆豆”,因为obj2改变的不是本身,而是指针对应堆栈中的内容,obj和obj2指向的是同一内容
七、npm包简介
npm全称为 node package manager ,即节点包管理器,他的作用就是下载安装管理需要的包,类似于电脑管家。
下载了node.js之后,就会自动带有npm
包:包里面主要是两种文件,结构文件和描述文件,描述文件package.json比较重要,我们可以在里面看到包的一些简介比如用的方法、作者、版本等等,注意:json里不能写注释。
常用命令:
npm -v 查看版本npm search 包名 搜索包npm install 包名 下载包npm remove 包名 删除包npm install 包名 --save 下载包并添加依赖npm install 下载当前项目中依赖里包含的包
为什么要用--save?
这是在pakage.json里添加依赖的
为什么要用依赖?
因为包A用到了包B的内容,就像链条一样,不用挨个下载;而且上传的时候是不会把包传上去的,太浪费空间了,都是网上公用的包,可以自己下载,依赖就像目录一样,可以自己查询到需要下载的包。
由于npm 是国外的,可能速度比较慢,所以咱们中国有自己的淘宝镜像,安装命令如下:
npm install -g cnpm --registry=https://registry.npm.taobao.org
如果cnpm不能安装成功,提示“因为在此系统上禁止运行脚本”,则需要以管理员身份打开power shell,把权限打开,输入命令 set-ExecutionPolicy RemoteSigned,选择Y,即可更改权限,再输入cnpm -v,即可查看版本,发现cnpm已安装成功。
除了npm、cnpm,还有一种包管理工具,叫yarn;他比npm更快,还能保持下载依赖的版本一致性,所以也可以下载yarn,命令为 npm install -g yarn
八、buffer缓冲区
用户向服务器发起请求和接受反馈时的数据就存贮在buffer里,buffer就类似于数组,但他更加强大,可以存储二进制文件,弥补了数组不能存储图片、音频的不足。
buffer的具体使用,可参考node.js官方文档
node.js中bufferd的使用
九、文件系统
名称 | 特点 |
同步文件 | 阻塞,顺序加载 |
异步文件 | 不阻塞,回调加载 |
简单文件 | 简单一次性写入 |
流式文件 | 适合大文件,分批写入 |
具体的使用同样可以在node.js的官网中找到
Node.js入门基础相关推荐
- Node.js 入门知识点总结
Noed.js 快速入门 前言 node.js 入门 环境配置 hello node.js node.js 获取参数 node.js 模块系统 node.js 路由 node.js 文件操作 使用 n ...
- node.js入门 - 9.api:http
node一个重要任务是用来创建web服务,接下来我们就学习与此相关的一个重要的api -- http.我们使用http.createServer()创建一个http服务的实例,用来处理来自客户的请求. ...
- 《Node.js入门》Windows 7下Node.js Web开发环境搭建笔记
最近想尝试一下在IBM Bluemix上使用Node.js创建Web应用程序,所以需要在本地搭建Node.js Web的开发测试环境. 这里讲的是Windows下的搭建方法,使用CentOS 的小伙伴 ...
- Node.js Stream - 基础篇
背景 在构建较复杂的系统时,通常将其拆解为功能独立的若干部分.这些部分的接口遵循一定的规范,通过某种方式相连,以共同完成较复杂的任务.譬如,shell通过管道|连接各部分,其输入输出的规范是文本流. ...
- js读取http chunk流_极简 Node.js入门 教程双工流
点击上方蓝字关注我们 小编提示: 本文是由 ICBU 的谦行小哥哥出品,我们会持续发出极简 Node.js入门 教程,敬请期待哦,文中有比较多的演示代码建议横屏阅读 双工流就是同时实现了 Readab ...
- node.js入门 - 7.异常处理与多进程开发
node.js入门 - 7.异常处理与多进程开发 参考文章: (1)node.js入门 - 7.异常处理与多进程开发 (2)https://www.cnblogs.com/softlover/arch ...
- 【Node.js】 基础语法
目录 Node.js npm package.json 字符编码 REPL Buffer(缓冲区) 函数 回调函数 模块系统 Express 框架 全局对象 console process Strea ...
- node.js 入门 (1)
node.js 入门 (1) 一.node.js 是什么? 二.node.js 有那些特点? 三.node.js 安装种配置 安装方式 1:安装单个 node 版本(不推荐) 安装方式 2:安装多个 ...
- Node.js 入门教程 23 使用 npm 的语义版本控制 24 卸载 npm 软件包 25 npm 全局或本地的软件包
Node.js 入门教程 Node.js官方入门教程 Node.js中文网 本文仅用于学习记录,不存在任何商业用途,如侵删 文章目录 Node.js 入门教程 23 使用 npm 的语义版本控制 24 ...
最新文章
- 数据可视化[python-pyecharts]制作中国各省份近三个月新型冠状病毒肺炎变化图
- php 多人相册,精選五種 PHP 網路相簿總覽
- 【集训第四天·继续刷题】之 lgh怒刚ypj
- 百度输入法发布AI版本10.0,重磅推出“AI助聊”功能
- Android 首页图片轮播
- 点钞机语音怎么打开_抖音内测语音直播!支持8人在线聊天,一文教你如何玩?...
- Android虚拟机和Java虚拟机的区别
- mybatis 显示 sql日志
- flutter: 根视图、根元素与根渲染
- java 获取季度第一天_Java获取当天、本周、本月、本季度、本年等 开始及结束时间...
- python 读取excel失败 可以转换成csv文件
- Compile、Make和Build的区别(as make, build, clean, run)
- 基于kotlin的coroutines的生命周期管理
- 微积分 --- 以e为底的指数函数(个人学习笔记)
- 搭建Nginx图片or视频服务器
- 如何在word文档里复选框里打勾?
- java itext图片大小_java – iText:降低图像质量(减少生成的PDF大小)
- 【1、雅思听力】何琼口语学习记录 第2节
- 2020年数据标注行业回顾及2021年展望
- 媒体谈北京豪车遍地报道:传递羡富价值观刺激社会
热门文章
- Python使用随机森林模型进行电影评分预测
- PMBOK(第六版) PMP笔记——《一》第一章 引论
- [CS61A]Week03笔记1
- android ajax提交图片,ajaxFileUpload上传图片
- 接口文档 HTML,附录1:接口文档参考模板
- pscad c语言程序,pscad自定义元件.doc
- angular+TS实现搜索关键字高亮
- windows使用psftp上传文件到linux服务器
- 青龙面板--多功能羊毛脚本
- 计算机应用基础案例教程答案,计算机应用基础案例教程问答题答案.doc