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的官网中找到

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值