zoukankan      html  css  js  c++  java
  • node.js的一些知识

    • 什么是node.js

    1. node.js是构建于chrome浏览器v8引擎上的一个js运行环境
    2. 可以解析和执行js代码
    3. 可以当做另一种上下文,脱离浏览器环境(后端)运行js代码,而代码解析就是基于V8引擎
    4. 伴随着node.js有许多模块,提高效率。即node.js是一个运行环境,又是一个库
    5. node.js的 事件驱动和非阻塞IO模型使得node.js本身非常的轻量和高效
    • node.js的实现结构

    1. V8 JavaScript 解析执行引擎 ECMAScript
    2. 中间层 (提供了文件操作、网络操作登陆接口)更加接近操作系统的接口供开发人员使用
    3. 硬件层
    • node.js可以做什么

    1. 操作文件(创建、删除、修改、读取)
    2. 提供Web服务(在Node中可以接收客户端的请求了)
    3. Node 可以 开发一些 命令行工具软件
    4. Node 可以 开发动态网站(有用户业务交互的功能Web站点)
      • 用户登陆
      • 用户注册
      • 添加购物车
      • 商品的展示
    5. Node 可以帮我们 把之前 所写的 静态页面 -> 动态化
    6. Node.js 不需要操作DOM、BOM了,也不需要写HTML、css, 不需要考虑兼容性的问题
    7. Node.js 编程实际上就是在 写 JavaScript 代码,关心的是业务功能
    8. 操作持久化数据
    9. 可以开发 命令台 工具软件
    • node.js和PHP的区别

    相同点:

    1. 它们都能操作文件,都有和操作系统底层打交道的 API
    2. 它们都可以进行网络操作,网络服务

    不同点:

    1.  PHP 需要和 Apache 结合起来才能提供 Web服务
    2.  Node.js 摒弃了以往所有的服务器,Node.js 可以独立作为一个服务器来使用
    3. Java、PHP、.net 能做的事儿,Node.js 基本都能做,而且在某一方面比它们还要做的好
    • 安装包管理工具npm

    1. 允许用户从NPM服务器下载别人编写的三方包到本地使用
    2. 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用
    3. 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用
    • node.js模块加载规则,即:包的加载

    当模块标识既不是文件模块,也不是核心模块的时候,

     Node.js按照一定的规则去查找该 包模块 先找当前的 node_modules 目录下有没有工具包(例如项目引用的node-markdown包),如果有,优先找 package.json 文件, 找到 package.json 文件之后,找 里面的 main 属性 如果 package.json 文件没有 或者 没有 main 属性 或者 main属性指定的文件模块不存在 Node.js 会取上一级目录下的 node_modules 目录下 找 该工具包继续走上面的流程 直到找到根目录下 如果还找不到那么就报错。正是因为有这种规则存在,require文件路径直接可以写成包的文件名。

    • 为了防止误删包之后,不清楚是缺少的文件模块、核心模块等等,这个时候就需要这个安装命令

    npm install node-markdown --save

     那么package.json文件里对多出“depandencies”:{“node-markdown”:“^0.1.1”},

    这个时候把包删掉,执行下面命令初始化package.json文件

    npm init -y

    再执行

    npm install node-markdown --save

     那么文件中包会自动下载所缺少的包

    • 在这总结了一些npm常用命令

    npm init 【-y】 初始化一个package.json文件

    npm install 包名 安装一个包

    npm install –save 包名 将安装的包添加到package.json的依赖 中(dependencies)

    npm install –g 包名 安装一个命令行工具 npm docs 包名 查看包的文档【非常有用】

    npm root -g 查看全局包安装路径

    npm config set prefix “路径” 修改全局包安装路径

    npm list 查看当前目录下安装的所有包

    npm list -g 查看全局包的安装路径下所有的包

    npm uninstall 包名 卸载当前目录下某个包

    npm uninstall –g 包名 卸载全局安装路径下的某个包

    npm update 包名 更新当前目录下某个包

     

     

     

     

     

     

  • 相关阅读:
    算法竞赛入门经典习题2-3 韩信点兵
    ios入门之c语言篇——基本函数——5——素数判断
    ios入门之c语言篇——基本函数——4——数值交换函数
    144. Binary Tree Preorder Traversal
    143. Reorder List
    142. Linked List Cycle II
    139. Word Break
    138. Copy List with Random Pointer
    137. Single Number II
    135. Candy
  • 原文地址:https://www.cnblogs.com/goweb/p/5449835.html
Copyright © 2011-2022 走看看