NodeJs基础(node+nmp)

2017-11-01  本文已影响0人  Is_JackieZhang

NodeJs

用于服务器端开发,是执行js的ECMAScript标准,不包含DOM和BOM,但是部分API可以使用

webstorm与svn关联:

  1. 配置svn
  2. file-->settings-->version Control--> Subversion-->Use command line client 取消勾选

VCS-->checkout from version Control--> Subversion-->添加仓库地址(默认是http)--> 选择存储目录

注意:文件名不要和与框架名称(node nodeJs )一模一样。容易引起冲突

安装命令行工具(非必需)

  1. 安装命令行工具 slik Subversion

  2. 关联webstorm:file-->settings-->version Contol--> Subversion-->Use command line client 勾选并且选择路径--svn.exe
    注意:安装路径:不要有空格,特殊字符,纯英文

命令行窗口

别名:终端、shell、小黑屏;
开启:win+R -->cmd-->回车;
在Windows的命令行窗口中直接输入DOS命令对计算机进行操作

常用命令

环境变量

指的是系统中需要使用的变量
path:用户path和系统Path

进程&线路

打开 Windows任务管理器可看到进程

进程

线程

Node.js

node.js发展史

Nodejs简介

单线程:主线程是单线程+I/O线程池;底层C++,大部分基本模块是JavaScript;开发简单/硬件要求低 优化性能

用途:web服务API;实时多人游戏;后端的Web服务,例如跨域、服务器端的请求;基于Web的应用;多客户端的通信

安装Node.js

node.js上的代码

CommonJs规范

解决JavaScript的缺陷

ECMAScript5 标准的缺陷

模块化

如果程序设计达到一定规模程度则必须进行模块化;模块化有多种形式,但至少提供将代码分割为多个源文件的机制

CommonJs规范

主要是为了弥补当前JavaScript没有模块化标准的缺陷

CommonJS对模块的定义十分简单:

证明js模块化代码在函数中运行

全局中没有,只有函数中有的参数
通过在模块中打印 arguments 证明模块运行在一个函数中
arguments.callee 属性代表的是当前调用函数对象

当模块中的代码执行时,node会自动在模块的前边添加如下代码:function (exports, require, module, __filename, __dirname) { } 这样模块中的所有代码就都被包含到一个函数中执行,所以函数中的变量和函数默认外部都是不可访问的

在函数中,node定义并传递如下几个参数

exports&module.exports 的区别

包 package

将一组相关的模块组合在一起,形成一组完整的工具;本质是 一个文件夹
commonJS包规范由包结构和包描述文件
包结构:压缩文件

NPM(Node Package Manager)

包规范的其中一种实践
借助NPM,Node与第三方模块之间形成很好一个生态系统

NPM镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org
用cnpm 代替 npm;

NPM命令

NPM

指令

webstorm中使用npm

  1. Terminal:打开小窗口
  2. cd targetPath:进入指定路径
  3. npm i packagefile:安装需要的包
  4. 引入包文件,var pName = require('packageName')
  5. 调用方法
    node查询模块:当在node中引入一个外部模块时,需要通过模块的标识来引入模块,node会自动根据模块标识去搜索模块;首先node会去当前文件所在目录的node_modules文件夹去查询标识模块,如果有,则直接对其使用;如果没有,则去当前目录的上一级目录的node_modules查询,如果有则使用,如果没有则继续去上一级查询直到找到为止;如果根目录都没有找到,则报错。
上一篇下一篇

猜你喜欢

热点阅读